[doc] Change structure to make it more readable.
--- a/doc/book/en/D010-faq.en.txt Tue May 05 02:02:58 2009 -0700
+++ b/doc/book/en/D010-faq.en.txt Tue May 05 02:03:45 2009 -0700
@@ -11,7 +11,8 @@
http://groups.google.com/group/google-appengine/browse_frm/thread/f48cf6099973aef5/c28cd6934dd72457
]
-* Why does not CubicWeb have a template language ?
+Why does not CubicWeb have a template language ?
+------------------------------------------------
There are enough template languages out there. You can use your
preferred template language if you want. [explain how to use a
@@ -28,7 +29,8 @@
The reason template languages are not used in this book is that
experience has proved us that using pure python was less cumbersome.
-* Why do you think using pure python is better than using a template language ?
+Why do you think using pure python is better than using a template language ?
+-----------------------------------------------------------------------------
Python is an Object Oriented Programming language and as such it
already provides a consistent and strong architecture and syntax
@@ -43,7 +45,8 @@
we use standard OOP techniques and this is a key factor in a
robust application.
-* Why do you use the GPL license to prevent me from doing X ?
+Why do you use the GPL license to prevent me from doing X ?
+-----------------------------------------------------------
GPL means that *if* you redistribute your application, you need to
redistribute it *and* the changes you made *and* the code _linked_
@@ -58,14 +61,16 @@
clients.
-* CubicWeb looks pretty recent. Is it stable ?
+CubicWeb looks pretty recent. Is it stable ?
+--------------------------------------------
It is constantly evolving, piece by piece. The framework has
evolved over the past seven years and data has been migrated from
one schema to the other ever since. There is a well-defined way to
handle data and schema migration.
-* Why is the RQL query language looking similar to X ?
+Why is the RQL query language looking similar to X ?
+----------------------------------------------------
It may remind you of SQL but it is higher level than SQL, more like
SPARQL. Except that SPARQL did not exist when we started the project.
@@ -89,11 +94,13 @@
[copy answer from forum, explain why similar to sparql and why better
than django and SQL]
-* which ajax library
+which ajax library
+------------------
[we use jquery and things on top of that]
-* `Error while publishing rest text ...`
+`Error while publishing rest text ...`
+--------------------------------------
While modifying the description of an entity, you get an error message in
the application `Error while publishing ...` for Rest text and plain text.
@@ -110,7 +117,8 @@
This can be fixed by applying the patch described in :
http://code.google.com/p/googleappengine/issues/detail?id=48
-* What are hooks used for?
+What are hooks used for?
+------------------------
Hooks are executed around (actually before or after) events. The
most common events are data creation, update and deletion. They
@@ -123,19 +131,22 @@
Other kinds of hooks, called Operations, are available
for execution just before commit.
-* When should you define an HTML template rather than define a graphical component?
+When should you define an HTML template rather than define a graphical component?
+---------------------------------------------------------------------------------
An HTML template cannot contain code, hence it is only about static
content. A component is made of code and operations that apply on a
well defined context (request, result set). It enables much more
dynamic views.
-* What is the difference between `AppRsetObject` and `AppObject` ?
+What is the difference between `AppRsetObject` and `AppObject` ?
+----------------------------------------------------------------
`AppRsetObject` instances are selected on a request and a result
set. `AppObject` instances are directly selected by id.
-* How to update a database after a schema modification?
+How to update a database after a schema modification?
+-----------------------------------------------------
It depends on what has been modified in the schema.
@@ -150,7 +161,8 @@
* Add a relation: ``add_relation_definition('SubjRelation', 'MyRelation', 'ObjRelation')``.
-* How to create an anonymous user?
+How to create an anonymous user?
+--------------------------------
This allows to bypass authentication for your site. In the
``all-in-one.conf`` file of your instance, define the anonymous user
@@ -175,7 +187,8 @@
decribed above.
-* How to change the application logo?
+How to change the application logo?
+-----------------------------------
There are two ways of changing the logo.
@@ -193,7 +206,8 @@
where DATADIR is ``mycubes/data``.
-* How to configure LDAP source?
+How to configure LDAP source?
+-----------------------------
Your instance's sources are defined in ``/etc/cubicweb.d/myapp/sources``.
Configuring an LDAP source is about declaring that source in your
@@ -219,7 +233,8 @@
Any change applied to configuration file requires to restart your
application.
-* I get NoSelectableObject exceptions: how do I debug selectors ?
+I get NoSelectableObject exceptions: how do I debug selectors ?
+---------------------------------------------------------------
You just need to put the appropriate context manager around view/component
selection: ::
@@ -233,7 +248,8 @@
2009-01-09 16:43:52 - (cubicweb.selectors) WARNING: selector one_line_rset returned 0 for <class 'cubicweb.web.views.basecomponents.WFHistoryVComponent'>
-* How to format an entity date attribute?
+How to format an entity date attribute?
+---------------------------------------
If your schema has an attribute of type Date or Datetime, you might
want to format it. First, you should define your preferred format using