Context and domain
We have stumbled upon context and domain several times. We have seen that window actions are able to set them and relational fields in models can also have them as attributes.
Context data
The context is a dictionary carrying session data that can be used on both the client-side user interface and the server-side ORM and business logic.
On the client side it can carry information from one view to next, such as the ID of the record active on the previous view, after following a link or a button, or to provide default values to be used in the next view.
On the server side, some recordset field values can depend on the locale settings provided by the context. In particular the lang
key affects the value of translatable fields. Context can also provide signals for server-side code. For example, the active_test
key when set to False
changes the behavior of ORM's search()
method so that it does not filter out inactive records.
An initial context from the web client looks like this...