0

这是关于新 API 的很好的解释。

另外,我对计算的 one2many 字段有疑问。以此为例

类父类已计算类子类的 one2many 字段。我希望 one2many 字段自动填充一些随机值。

所以,我给我的领域计算。还使用@api.depends("some_field") 创建一个方法。

要从方法中向 one2many 字段插入值,我使用 childfield += self.env['class_child'].new({'key':value})。

在父创建时,它工作正常,每次更改依赖字段时都会更新 one2many 字段。问题出在父编辑处,当我尝试更改依赖值时,出现错误:

TypeError:不是 JSON 可序列化的

我不明白我的概念有什么问题,我错了吗?还是在编辑父类时我需要使用另一种方法。

谢谢

4

1 回答 1

0

试试这种类型的代码:

self.env['class_child'].create({
'key': [(0, 0, {'field_name1': 'field Value', 'field_name2': 'field value'})]

对于 one2many 字段,预计会有一串元组。

这是接受的元组列表,具有相应的语义:

(0, 0, { values }) #链接到需要使用给定值字典创建的新记录

(1, ID, { values }) #用id = ID更新链接记录(在上面写

(2, ID) #remove 并删除 id = ID 的链接记录(在 ID 上调用 unlink,这将完全删除对象,以及指向它的链接)

例子:

[(0, 0, {'field_name':field_value_record1, ...}), (0, 0, {'field_name':field_value_record2, ...})]
于 2015-10-29T06:42:15.143 回答