Odoo 如何将数据插入到具有外部约束的多个表中?
Odoo how to insert data to multiple tables with foreign constraint?
我的项目调用中有两个 table task
和 params
,task
代表工作任务, params
是它的参数列表任务。他们是one2many关系。 params
有一个名为 task_id 的列,其中包含任务的 ID table(外键)。
这里我在 task
table 中插入一行,然后在 params
中插入一些行 table:
1.task.create(vals)
2.params.create(param_vals)
但是由于第2行执行时的事务没有插入任务所以没有生成task_id。如何避免这种情况?
这不是 SQL 交易的运作方式。
如果您有这样的两步交易:
步骤 1 插入任务
步骤 2 插入参数
然后任务 ID 将在交易中可用。因此,当您插入任务时,您需要读取 PK ID,然后在参数中使用它。
像这样:Python/postgres/psycopg2: getting ID of row just inserted
我的项目调用中有两个 table task
和 params
,task
代表工作任务, params
是它的参数列表任务。他们是one2many关系。 params
有一个名为 task_id 的列,其中包含任务的 ID table(外键)。
这里我在 task
table 中插入一行,然后在 params
中插入一些行 table:
1.task.create(vals)
2.params.create(param_vals)
但是由于第2行执行时的事务没有插入任务所以没有生成task_id。如何避免这种情况?
这不是 SQL 交易的运作方式。
如果您有这样的两步交易:
步骤 1 插入任务
步骤 2 插入参数
然后任务 ID 将在交易中可用。因此,当您插入任务时,您需要读取 PK ID,然后在参数中使用它。
像这样:Python/postgres/psycopg2: getting ID of row just inserted