In this chapter, we learned how to work with model data and perform CRUD operations—creating, reading, updating, and deleting data. This is the foundation to implement our business logic and automation.
To experiment with the ORM API, we used the Odoo interactive shell. Our commands run in an environment accessible through self.env
. The environment provides access to the model registry and has a context that can provide relevant information for the commands executed, such as the current language, lang
, and timezone, tz
.
Recordsets are created using the search(<domain>)
or browse([<ids<])
ORM methods. They can then be iterated to access each singleton (an individual record). We can then use object-like dot-notation on singletons to get and set values on records.
Other than the direct value assignment on singletons, we can also use write(<dict>)
to update all elements in a recordset with a single command. The create(<dict>)
, copy(<dict>)
and unlink()
commands...