Changelog¶
Odoo version 17.0¶
Introduce an
SQL
wrapper object to make SQL composition easier and safer with respect to SQL injections. Methods of the ORM now use it internally. Introduced by #134677.
Odoo Online version 16.4¶
Method
name_get()
has been deprecated with #122085. Read fielddisplay_name
instead.
Odoo Online version 16.3¶
Method
_read_group()
has a new signature with #110737
Odoo Online version 16.2¶
Refactor the implementation of searching and reading methods to be able to combine both in a minimal number of SQL queries. We introduce two new methods
search_fetch()
andfetch()
that take advantage of the combination. More details can be found on the pull request #112126.
Odoo version 16.0¶
Translations for translated fields are stored as JSONB values with #97692 and #101115. Code translations are no longer stored into the database. They become static and are extracted from the PO files when needed.
search_count()
takes thelimit
argument into account with #95589. It limits the number of records to count, improving performance when a partial result is acceptable.
Odoo Online version 15.4¶
New API for flushing to the database and invalidating the cache with #87527. New methods have been added to
odoo.models.Model
andodoo.api.Environment
, and are less confusing about what is actually done in each case. See the section SQL Execution.
Odoo Online version 15.3¶
The argument
args
is renamed todomain
forsearch()
,search_count()
and_search()
. #83687filtered_domain()
conserves the order of the current recordset. #83687The methods
fields_get_keys()
andget_xml_id()
onModel
are deprecated. #83687The method
_mapped_cache()
is removed. #83687Remove the
limit
attribute ofOne2many
andMany2many
. #83687
Odoo Online version 15.2¶
Specific index types on fields: With #83274 and #83015, developers can now define what type of indexes can be used on fields by PostgreSQL. See the index property of
odoo.fields.Field
.The
_sequence
attribute ofModel
is removed. Odoo lets PostgreSQL use the default sequence of the primary key. #82727The method
_write()
does not raise an error for non-existing records. #82727The
column_format
anddeprecated
attributes ofField
are removed. #82727