【odoo】odoo中对子数据的独有操作[(0, 0, {‘name‘: ‘demo‘})]

作者 : admin 本文共693个字,预计阅读时间需要2分钟 发布时间: 2024-06-16 共1人阅读

概要

        在Odoo中,有种写法用于操作 one2manymany2many 字段时,描述如何在数据库中创建、更新或删除相关记录。具体而言,这是一种命令格式,被称为 “commands” 或 “special command tuples”,用于 one2manymany2many 字段。

使用场景:主要用在表数据跟表数据同时处理的时候。

内容

常见例子

【odoo】odoo中对子数据的独有操作[(0, 0, {‘name‘: ‘demo‘})]插图

 或者多条

result = models.execute_kw(db, uid, password, 'res.partner', 'write', [
    [46],
    {
        'name': "新新东方厨师2",
        'user_id': 8,
        'child_ids': [
            (0, 0, {'name': '新新东方厨师4'}),
            (0, 0, {'name': '新新东方厨师5'}),
            (0, 0, {'name': '新新东方厨师6'}),
        ]
    }
])

格式说明

第一个参数:操作code,

第二个参数:数据主键id/0/动态id/(充当占位符),

第三个参数:记录的字段和值

(0, 0, {'product_id': 1, 'quantity': 10}),    # 创建新记录
(1, 42, {'quantity': 20}),                    # 更新 ID 为 42 的记录
(2, 43, False),                               # 删除 ID 为 43 的记录
(3, 44, False),                               # 解除与 ID 为 44 的记录的关联
(4, 45, False),                               # 将 ID 为 45 的记录添加到关联中
(5, 0, 0),                                    # 清空所有关联记录
(6, 0, [46, 47])                              # 用 ID 为 46 和 47 的记录替换所有现有记录

小结

        多写多敲多思考,毕竟,知己知彼才能看懂源码。

Tip:本人才学尚浅,如有纰漏,还请不吝赐教!

本站无任何商业行为
个人在线分享 » 【odoo】odoo中对子数据的独有操作[(0, 0, {‘name‘: ‘demo‘})]
E-->