odoo xml中添加数据的数字代表含义

参考原文:https://alanhou.org/odoo12-import-export-data/

<?xml version="1.0"?>
  <odoo noupdate="1">
  <!-- Data to load -->
  <record model="res.partner" id="res_partner_huxley">
  <field name="name">Aldous Huxley</field>
  </record>


  <record model="library.book" id="library_book_bnw">
  <field name="name">Brave New World</field>
  <field name="author_ids"
  eval="[(4, ref('res_partner_huxley'))]" />
  <field name="date_published">1932-01-01</field>
  </record>


</odoo>

 

设置字段值更复杂的方式是通过 eval 属性, ref()函数用于将外部标识符转换为对应的数据库 ID,这可用于为关联字段设置值。

完整的可用命令如下:

  • (0, _ , {‘field’: value})新建一条记录并将其与之关联
  • (1, id, {‘field’: value})更新已关联记录的值
  • (2, id, _)移除关联并删除 id 关联的记录
  • (3, id, _)移除关联但不删除 id 关联的记录。通常使用它来删除many-to-many字段的关联记录
  • (4, id, _)关联已存在记录,仅适用于many-to-many字段
  • (5, _, _)删除所有关联,但不删除关联记录
  • (6, _, [ids])替换已关联记录列表为此处的列表

上述下划线_字符代表非关联值,通常填入 o 或 False。

小贴士:后面的非关联值可以放心地省略掉,如(4, id, _) 可使用(4, id)

 

posted @ 2019-06-12 17:07  kakaok  阅读(869)  评论(0编辑  收藏  举报