doc/book/en/A03a-concepts.en.txt
changeset 229 767ff7f5d5a7
parent 127 ae611743f5c6
child 272 06077d56f2c4
equal deleted inserted replaced
228:27b958dc72ae 229:767ff7f5d5a7
    86 *instance*
    86 *instance*
    87   An instance is a specific installation of a cube. All the required 
    87   An instance is a specific installation of a cube. All the required 
    88   configuration files necessarry for the well being of your web application
    88   configuration files necessarry for the well being of your web application
    89   are grouped in an instance. This will refer to the cube(s) your application
    89   are grouped in an instance. This will refer to the cube(s) your application
    90   is based on.
    90   is based on.
    91   By example logilab.org and our intranet are two instances of a single
    91   For example logilab.org and our intranet are two instances of a single
    92   cube jpl, developped internally.
    92   cube jpl, developped internally.
    93   The instances are defined in the directory `~/etc/cubicweb.d`.
    93   The instances are defined in the directory `~/etc/cubicweb.d`.
    94 
    94 
    95 *application*
    95 *application*
    96   The term application is sometime used to talk about an instance
    96   The term application is sometime used to talk about an instance
   135 ~~~~~~~~~~~~~~~~~
   135 ~~~~~~~~~~~~~~~~~
   136 
   136 
   137 The engine in `CubicWeb` is a set of classes managing a set of objects loaded
   137 The engine in `CubicWeb` is a set of classes managing a set of objects loaded
   138 dynamically at the startup of `CubicWeb` (*appobjects*). Those dynamics objects, based on the schema
   138 dynamically at the startup of `CubicWeb` (*appobjects*). Those dynamics objects, based on the schema
   139 or the library, are building the final application. The differents dymanic components are
   139 or the library, are building the final application. The differents dymanic components are
   140 by example:
   140 for example:
   141 
   141 
   142 * client and server side
   142 * client and server side
   143 
   143 
   144   - entities definition, containing the logic which enables application data manipulation
   144   - entities definition, containing the logic which enables application data manipulation
   145 
   145 
   203 
   203 
   204 A request instance is created when an HTPP request is sent to the web server.
   204 A request instance is created when an HTPP request is sent to the web server.
   205 It contains informations such as forms parameters, user authenticated, etc.
   205 It contains informations such as forms parameters, user authenticated, etc.
   206 
   206 
   207 **Globally, a request represents a user query, either through HTTP or not
   207 **Globally, a request represents a user query, either through HTTP or not
   208 (we also talk about RQL queries on the server side by example)**
   208 (we also talk about RQL queries on the server side for example)**
   209 
   209 
   210 An instance of `Request` has the following attributes:
   210 An instance of `Request` has the following attributes:
   211 
   211 
   212 * `user`, instance of `cubicweb.common.utils.User` corresponding to the authenticated
   212 * `user`, instance of `cubicweb.common.utils.User` corresponding to the authenticated
   213   user
   213   user
   325 
   325 
   326 .. note::
   326 .. note::
   327   When we inherit from `AppObject` (even not directly), you *always* have to use
   327   When we inherit from `AppObject` (even not directly), you *always* have to use
   328   **super()** to get the methods and attributes of the superclasses, and not
   328   **super()** to get the methods and attributes of the superclasses, and not
   329   use the class identifier.
   329   use the class identifier.
   330   By example, instead of writting: ::
   330   For example, instead of writting: ::
   331 
   331 
   332       class Truc(PrimaryView):
   332       class Truc(PrimaryView):
   333           def f(self, arg1):
   333           def f(self, arg1):
   334               PrimaryView.f(self, arg1)
   334               PrimaryView.f(self, arg1)
   335 
   335 
   369   |
   369   |
   370   |-- debian/
   370   |-- debian/
   371   |
   371   |
   372   \-- __pkginfo__.py
   372   \-- __pkginfo__.py
   373     
   373     
   374 We can use simple Python module instead of packages, by example: 
   374 We can use simple Python module instead of packages, for example: 
   375 
   375 
   376 ::
   376 ::
   377   
   377   
   378   mycube/
   378   mycube/
   379   |
   379   |