заполнение множества значений¶
Чтобы заполнить или манипулировать полем one2many или many2many соответствующими значениями (записями), вам необходимо использовать специальную команду, как указано ниже.
Odoo 15.0+¶
First import fields
from odoo import fields
# or Command directly:
# from odoo.fields import Command
Then assign list of following commands to a x2many field:
fields.Command.create(values)fields.Command.update(id, values)fields.Command.delete(id)fields.Command.unlink(id)fields.Command.link(id)fields.Command.clear()fields.Command.set(ids)
Odoo 14.0-¶
Этот формат представляет собой список триплетов, выполняемых последовательно, где каждый триплет является командой для выполнения на множестве записей. Не все команды применяются во всех ситуациях. Возможные команды:
- ** (0, _, значения) ** добавляет новую запись, созданную из предоставленного ** значения ** dict.
- ** (1, id, значения) ** обновляет существующую запись id ** id ** значениями в ** значениях **. Не может использоваться в ~ .create.
- ** (2, id, _) ** удаляет запись id ** id ** из набора, а затем удаляет ее (из базы данных). Не может использоваться в ~ .create.
- ** (3, id, _) ** удаляет запись id ** id ** из набора, но не удаляет ее. Не может использоваться на ~ openerp.fields.One2many. Не может использоваться в ~ .create.
- ** (4, id, _) ** добавляет существующую запись id ** id ** к набору. Не может использоваться на ~ openerp.fields.One2many.
- ** (5, _, _) ** удаляет все записи из набора, что эквивалентно явному использованию команды ** 3 ** для каждой записи. Не может использоваться на ~ openerp.fields.One2many. Не может использоваться в ~ .create.
- ** (6, _, ids) ** заменяет все существующие записи в наборе на список ** ids **, что эквивалентно использованию команды ** 5 **, за которой следует команда ** 4 ** для каждого ** id ** in ** id **. Не может использоваться на ~ openerp.fields.One2many.
Примечание
Значения, помеченные как ** _ ** в приведенном выше списке, игнорируются и могут быть чем угодно, обычно ** 0 ** или ** False **.
Based on https://github.com/odoo/odoo/blob/14.0/odoo/models.py