doc/book/devweb/request.rst
author Denis Laxalde <denis.laxalde@logilab.fr>
Thu, 21 Mar 2019 14:33:54 +0100
changeset 12530 9d88e1177c35
parent 11875 011730a4af73
permissions -rw-r--r--
Remove Twisted web server Twisted web server is not used anymore and has been superseded by pyramid many years ago. Furthermore, our usage is not compatible with Python 3. So we drop the "etwist" sub-package. As a consequence, "all-in-one" configuration type gets dropped as it was Twisted-specific. We resurrect it in cubicweb/pyramid/config.py by only keeping options used by the "pyramid". Similarly, we introduce a AllInOneCreateHandler in cubicweb/pyramid/pyramidctl.py that is basically the one that lived in cubicweb/etwist/twctl.py and is used to create the "all-in-one" instance. Added a TODO here about "pyramid.ini" that could be generated at the end of bootstrap() method. In cubicweb/devtools/httptest.py, CubicWebServerTC is now equivalent to CubicWebWsgiTC and the latter is dropped.
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
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    23
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    24
* `User and identification`:
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    25
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
    26
  * `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
    27
    authenticated user
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    28
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    29
* `Session data handling`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    30
9580
abaae1496ba4 [book] Update documentation for new repoapi
Julien Cristau <julien.cristau@logilab.fr>
parents: 9183
diff changeset
    31
  * `session.data` is the dictionary of the session data; it can be
abaae1496ba4 [book] Update documentation for new repoapi
Julien Cristau <julien.cristau@logilab.fr>
parents: 9183
diff changeset
    32
    manipulated like an ordinary Python dictionary
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    33
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    34
* `Edition` (utilities for edition control):
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    35
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    36
  * `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
    37
  * `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
    38
    attributes and relation values)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    39
  * `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
    40
    (|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
    41
    used cubes)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    42
  * `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
    43
    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
    44
  * `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
    45
  * `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
    46
  * `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
    47
  * `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
    48
  * etype_rset
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    49
  * `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
    50
  * `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
    51
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    52
* `HTTP`
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    53
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    54
  * `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
    55
    (http, cookie, ...)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    56
  * `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
    57
    the http request
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    58
  * `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
    59
    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
    60
    (using the http content negociation)
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    61
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    62
*  `Cookies handling`
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    63
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    64
  * `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
    65
    HTTP 'Cookie'
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    66
  * `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
    67
    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
    68
    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
    69
    window)
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    70
  * `remove_cookie(cookie, key)`, forces a value to expire
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    71
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    72
* `URL handling`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    73
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    74
  * `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
    75
    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
    76
    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
    77
    specified or will be guessed.
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    78
  * `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
    79
    separators, ...) string from the given parameters
4442
7bc0e4ed4109 fix stupid sed
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4437
diff changeset
    80
  * `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
    81
  * `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
    82
  * `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
    83
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    84
* `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
    85
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    86
  * `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
    87
    html headers
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    88
  * `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
    89
    current html headers
10222
75d6096216d7 [docstrings] fix project-wide English language mistake
Dimitri Papadopoulos <dimitri.papadopoulos@cea.fr>
parents: 9580
diff changeset
    90
  * `add_onload(jscode)`: inject the given jscode fragment (a unicode
5458
a5b96b98242c [doc/book] complete a bit the request api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5394
diff changeset
    91
    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
    92
    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
    93
  * `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
    94
    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
    95
  * `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
    96
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    97
* `And more...`
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
    98
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
    99
  * `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
   100
    'Content-Type'
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   101
  * `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
   102
    of the HTTP request
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   103
  * `set_header(header, value)`, adds an arbitrary header in the response
9580
abaae1496ba4 [book] Update documentation for new repoapi
Julien Cristau <julien.cristau@logilab.fr>
parents: 9183
diff changeset
   104
  * `execute(*args, **kwargs)`, executes an RQL query and return the result set
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   105
  * `property_value(key)`, properties management (`CWProperty`)
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   106
  * 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
   107
    *while a request is executed*
1714
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   108
a721966779be new book layout, do not compile yet
sylvain.thenault@logilab.fr
parents:
diff changeset
   109
Please note that this class is abstract and that a concrete implementation
12530
9d88e1177c35 Remove Twisted web server
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11875
diff changeset
   110
will be provided by the *frontend* web used. For the views or others that are
9d88e1177c35 Remove Twisted web server
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11875
diff changeset
   111
executed on the server side, most of the interface of `Request` is defined in
9d88e1177c35 Remove Twisted web server
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 11875
diff changeset
   112
the session associated to the client.
5231
40f53867e332 [doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 4442
diff changeset
   113
5301
f4219a6e62e3 [doc/book] stuff a bit the publishing process (including various docstrings)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5290
diff changeset
   114
API
f4219a6e62e3 [doc/book] stuff a bit the publishing process (including various docstrings)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5290
diff changeset
   115
```
5231
40f53867e332 [doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 4442
diff changeset
   116
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   117
The elements we gave in overview for above are built in three layers,
10356
a009a31fb1ea [connection] eliminate ClientConnection leftovers
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10222
diff changeset
   118
from ``cubicweb.req.RequestSessionBase``, ``cubicweb.repoapi.Connection`` and
9580
abaae1496ba4 [book] Update documentation for new repoapi
Julien Cristau <julien.cristau@logilab.fr>
parents: 9183
diff changeset
   119
``cubicweb.web.ConnectionCubicWebRequestBase``.
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   120
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   121
.. 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
   122
   :members:
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   123
10356
a009a31fb1ea [connection] eliminate ClientConnection leftovers
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 10222
diff changeset
   124
.. autoclass:: cubicweb.repoapi.Connection
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   125
   :members:
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   126
9580
abaae1496ba4 [book] Update documentation for new repoapi
Julien Cristau <julien.cristau@logilab.fr>
parents: 9183
diff changeset
   127
.. autoclass:: cubicweb.web.request.ConnectionCubicWebRequestBase
5290
15846058378b [doc/book] fix a bit the request chapter, add autodoc
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 5231
diff changeset
   128
   :members: