doc/book/en/devweb/request.rst
author Arthur Lutz <arthur.lutz@logilab.fr>
Thu, 18 Oct 2012 15:52:05 +0200
branchstable
changeset 8754 9d5cfbde9856
parent 8312 6c2119509fac
child 9183 95e69c2d52a9
permissions -rw-r--r--
[book] remove XXX to an old discussion about appengine
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6832
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
     1
The `Request` class (`cubicweb.web.request`)
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
     2
--------------------------------------------
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
     3
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
     4
Overview
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
     5
````````
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
     6
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
     7
A request instance is created when an HTTP request is sent to the web
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
     8
server.  It contains informations such as form parameters,
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
     9
authenticated user, etc. It is a very prevalent object and is used
6832
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
    10
throughout all of the framework and applications, as you'll access to
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
    11
almost every resources through it.
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    12
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    13
**A request represents a user query, either through HTTP or not (we
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    14
also talk about RQL queries on the server side for example).**
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    15
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    16
Here is a non-exhaustive list of attributes and methods available on
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    17
request objects (grouped by category):
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    18
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    19
* `Browser control`:
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    20
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    21
  * `ie_browser`: tells if the browser belong to the Internet Explorer
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    22
    family
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    23
  * `xhtml_browser`: tells if the browser is able to properly handle
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    24
    XHTML (at the HTTP content_type level)
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    25
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    26
* `User and identification`:
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    27
6832
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
    28
  * `user`, instance of `cubicweb.entities.authobjs.CWUser` corresponding to the
f392e4fb36ec [doc] update cw api (XXX: similar changes have to be done in book probably)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5458
diff changeset
    29
    authenticated user
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    30
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    31
* `Session data handling`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    32
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    33
  * `session_data()`, returns a dictionary containing all the session data
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    34
  * `get_session_data(key, default=None)`, returns a value associated to the given
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    35
    key or the value `default` if the key is not defined
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    36
  * `set_session_data(key, value)`, assign a value to a key
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    37
  * `del_session_data(key)`,  suppress the value associated to a key
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    38
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    39
* `Edition` (utilities for edition control):
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    40
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    41
  * `cancel_edition`: resets error url and cleans up pending operations
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    42
  * `create_entity`: utility to create an entity (from an etype,
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    43
    attributes and relation values)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    44
  * `datadir_url`: returns the url to the merged external resources
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    45
    (|cubicweb|'s `web/data` directory plus all `data` directories of
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    46
    used cubes)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    47
  * `edited_eids`: returns the list of eids of entities that are
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    48
    edited under the current http request
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    49
  * `eid_rset(eid)`: utility which returns a result set from an eid
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    50
  * `entity_from_eid(eid)`: returns an entity instance from the given eid
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    51
  * `encoding`: returns the encoding of the current HTTP request
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    52
  * `ensure_ro_rql(rql)`: ensure some rql query is a data request
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    53
  * etype_rset
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    54
  * `form`, dictionary containing the values of a web form
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    55
  * `encoding`, character encoding to use in the response
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    56
  * `next_tabindex()`: returns a monotonically growing integer used to
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    57
    build the html tab index of forms
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    58
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    59
* `HTTP`
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    60
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    61
  * `authmode`: returns a string describing the authentication mode
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    62
    (http, cookie, ...)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    63
  * `lang`: returns the user agents/browser's language as carried by
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    64
    the http request
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    65
  * `demote_to_html()`: in the context of an XHTML compliant browser,
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    66
    this will force emission of the response as an HTML document
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    67
    (using the http content negociation)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    68
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    69
*  `Cookies handling`
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    70
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    71
  * `get_cookie()`, returns a dictionary containing the value of the header
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    72
    HTTP 'Cookie'
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    73
  * `set_cookie(cookie, key, maxage=300)`, adds a header HTTP `Set-Cookie`,
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    74
    with a minimal 5 minutes length of duration by default (`maxage` = None
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    75
    returns a *session* cookie which will expire when the user closes the browser
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    76
    window)
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    77
  * `remove_cookie(cookie, key)`, forces a value to expire
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    78
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    79
* `URL handling`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    80
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    81
  * `build_url(__vid, *args, **kwargs)`: return an absolute URL using
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    82
    params dictionary key/values as URL parameters. Values are
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    83
    automatically URL quoted, and the publishing method to use may be
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    84
    specified or will be guessed.
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    85
  * `build_url_params(**kwargs)`: returns a properly prepared (quoted,
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    86
    separators, ...) string from the given parameters
4442
7bc0e4ed4109 fix stupid sed
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4437
diff changeset
    87
  * `url()`, returns the full URL of the HTTP request
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    88
  * `base_url()`, returns the root URL of the web application
4442
7bc0e4ed4109 fix stupid sed
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4437
diff changeset
    89
  * `relative_path()`, returns the relative path of the request
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    90
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    91
* `Web resource (.css, .js files, etc.) handling`:
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    92
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    93
  * `add_css(cssfiles)`: adds the given list of css resources to the current
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    94
    html headers
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    95
  * `add_js(jsfiles)`: adds the given list of javascript resources to the
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    96
    current html headers
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    97
  * `add_onload(jscode)`: inject the given jscode fragment (an unicode
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    98
    string) into the current html headers, wrapped inside a
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    99
    document.ready(...) or another ajax-friendly one-time trigger event
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
   100
  * `add_header(header, values)`: adds the header/value pair to the
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
   101
    current html headers
8312
6c2119509fac [web] Move request handling logic into cubicweb application. (closes #2200684)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 6832
diff changeset
   102
  * `status_out`: control the HTTP status of the response
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
   103
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   104
* `And more...`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   105
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   106
  * `set_content_type(content_type, filename=None)`, adds the header HTTP
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   107
    'Content-Type'
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   108
  * `get_header(header)`, returns the value associated to an arbitrary header
4442
7bc0e4ed4109 fix stupid sed
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4437
diff changeset
   109
    of the HTTP request
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   110
  * `set_header(header, value)`, adds an arbitrary header in the response
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   111
  * `cursor()` returns a RQL cursor on the session
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   112
  * `execute(*args, **kwargs)`, shortcut to ``.cursor().execute()``
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   113
  * `property_value(key)`, properties management (`CWProperty`)
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   114
  * dictionary `data` to store data to share informations between components
4442
7bc0e4ed4109 fix stupid sed
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4437
diff changeset
   115
    *while a request is executed*
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   116
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   117
Please note that this class is abstract and that a concrete implementation
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   118
will be provided by the *frontend* web used (in particular *twisted* as of
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   119
today). For the views or others that are executed on the server side,
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   120
most of the interface of `Request` is defined in the session associated
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   121
to the client.
5231
40f53867e332 [doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 4442
diff changeset
   122
5301
f4219a6e62e3 [doc/book] stuff a bit the publishing process (including various docstrings)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5290
diff changeset
   123
API
f4219a6e62e3 [doc/book] stuff a bit the publishing process (including various docstrings)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5290
diff changeset
   124
```
5231
40f53867e332 [doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 4442
diff changeset
   125
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   126
The elements we gave in overview for above are built in three layers,
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   127
from ``cubicweb.req.RequestSessionBase``, ``cubicweb.dbapi.DBAPIRequest`` and
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   128
``cubicweb.web.CubicWebRequestBase``.
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   129
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   130
.. autoclass:: cubicweb.req.RequestSessionBase
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   131
   :members:
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   132
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   133
.. autoclass:: cubicweb.dbapi.DBAPIRequest
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   134
   :members:
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   135
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   136
.. autoclass:: cubicweb.web.request.CubicWebRequestBase
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   137
   :members: