[REF] test_lint: check overwrites of create()

Fix some examples to match the method definition of Model.create().
This commit is contained in:
Krzysztof Magusiak (krma) 2025-02-03 10:13:24 +00:00
parent 57977d2a10
commit 282ef3f402
3 changed files with 12 additions and 11 deletions

View File

@ -481,15 +481,15 @@ Add
.. code-block:: python
@api.model
def create(self, values):
if 'name' in values:
values['name'] = unidecode(values['name'])
return super(my_module, self).create(values)
def create(self, vals_list):
if 'name' in vals_list:
vals_list['name'] = unidecode(vals_list['name'])
return super().create(vals_list)
def write(self, values):
if 'name' in values:
values['name'] = unidecode(values['name'])
return super(my_module, self).write(values)
def write(self, vals):
if 'name' in vals:
vals['name'] = unidecode(vals['name'])
return super().write(vals)
Adding a Python dependency requires a module version increase for the platform to install it.

View File

@ -904,7 +904,8 @@ Symbols and Conventions
...
# CRUD methods (and name_search, _search, ...) overrides
def create(self, values):
@api.model
def create(self, vals_list):
...
# Action methods

View File

@ -59,11 +59,11 @@ specific business logic::
...
@api.model
def create(self, vals):
def create(self, vals_list):
# Do some business logic, modify vals...
...
# Then call super to execute the parent method
return super().create(vals)
return super().create(vals_list)
The decorator :func:`~odoo.api.model` is necessary for the :meth:`~odoo.models.Model.create`
method because the content of the recordset ``self`` is not relevant in the context of creation,