doc/book/devrepo/devcore/reqbase.rst
author Sylvain Thénault <sylvain.thenault@logilab.fr>
Wed, 04 Jan 2017 10:02:05 +0100
branch3.24
changeset 11901 afd7657a6d65
parent 10491 c67bcee93248
permissions -rw-r--r--
Never record undo information for session or data import for session, it may causes unlimited database size expansion while it makes no sense to undo this kind of changes. For data import, they are created programatically hence we may not want to undo this either.

Request and ResultSet methods
-----------------------------

Those are methods you'll find on both request objects and on
repository session.

Request methods
~~~~~~~~~~~~~~~

`URL handling`:

* `build_url(*args, **kwargs)`, returns an absolute URL based on the
  given arguments. The *controller* supposed to handle the response,
  can be specified through the first positional parameter (the
  connection is theoretically done automatically :).

`Data formatting`:

* `format_date(date, date_format=None, time=False)` returns a string for a
  date time according to instance's configuration

* `format_time(time)` returns a string for a date time according to
  instance's configuration

`And more...`:

* `tal_render(template, variables)`, renders a precompiled page template with
  variables in the given dictionary as context


Result set methods
~~~~~~~~~~~~~~~~~~

* `get_entity(row, col)`, returns the entity corresponding to the data position
  in the *result set*

* `complete_entity(row, col, skip_bytes=True)`, is equivalent to `get_entity` but
  also call the method `complete()` on the entity before returning it