Python 如何在Odoo 8中为计算字段设置存储触发器?

Python 如何在Odoo 8中为计算字段设置存储触发器?,python,openerp,odoo,openerp-8,odoo-8,Python,Openerp,Odoo,Openerp 8,Odoo 8,我开始使用OdooV8.0的新API,但在这样的计算字段中找不到有关存储触发器的有用信息(对于v7.0和v6.1): 在Odoo v8.0中,我尝试使用与v7.0相同的语法,但由于无法将JSON响应返回到web客户端,因此无法使其正常工作: 不可JSON序列化。 然后我读到store参数已转换为纯布尔字段(触发器没有dict): 那个么,如何设置触发器以在数据库中存储计算(和相关)字段的值呢?我想主要为它们制作过滤器和组,因此搜索功能将不再有用。在V8中,您可以使用任何字段作为计算字段。在V8中

我开始使用OdooV8.0的新API,但在这样的计算字段中找不到有关存储触发器的有用信息(对于v7.0和v6.1):

在Odoo v8.0中,我尝试使用与v7.0相同的语法,但由于无法将JSON响应返回到web客户端,因此无法使其正常工作:

不可JSON序列化。

然后我读到store参数已转换为纯布尔字段(触发器没有dict):


那个么,如何设置触发器以在数据库中存储计算(和相关)字段的值呢?我想主要为它们制作过滤器和组,因此
搜索功能将不再有用。

在V8中,您可以使用任何字段作为计算字段。在V8中,store是一个布尔参数,默认情况下为false

如果显式设置“store=True”,则在@api.dependens('name')中提到的依赖字段将充当触发字段

您可以指定另一个对象字段作为触发字段,该字段必须在记帐模块中,如@api.depends('other\u object.field\u name')

如果该值为“false”,则该值不会存储在数据库中,并且每次都会进行计算

upper = fields.Char(compute='_compute_upper')

在V8中,您可以使用任何字段作为计算字段。在V8中,store是一个布尔参数,默认情况下为false

如果显式设置“store=True”,则在@api.dependens('name')中提到的依赖字段将充当触发字段

您可以指定另一个对象字段作为触发字段,该字段必须在记帐模块中,如@api.depends('other\u object.field\u name')

如果该值为“false”,则该值不会存储在数据库中,并且每次都会进行计算

upper = fields.Char(compute='_compute_upper')

所以
store=True
会在每次更改时更新该值吗?相关字段呢?经过一些尝试和测试。我看到,
api.dependens
使
store=True
在字段更改时触发。所以
store=True
会在每次更改时更新值吗?相关字段呢?经过一些尝试和测试。我看到每当字段更改时,
api.dependens
会触发
store=True