Odoo 9.0 视图中的共同依赖字段

Co dependent fields in Odoo 9.0 view

大家好,感谢您花时间阅读我的问题:

我需要让两个字段在我的视图中相互更新,假设其中一个列出了成分,另一个列出了食物要求

requirements = fields.Selection([(0,"Vegan"),(1,"Lactose intolerant")])
ingredients_id = fields.Many2Many(comodel_name="sample.ingredients")

我需要的是更新 ingredients_id 的域以仅显示匹配 requirement 的域,反之亦然,如果您碰巧 select 并加入另一个域 select正确的requirement。我正在考虑根据字段 B 将字段 A 设为计算字段,然后将 on_change 添加到字段 B 以更新字段 A。但我很确定这会变成某种无限循环的情况。这是我唯一的选择还是我遗漏了一些明显的东西?

使用@api.depends装饰器并将两个字段作为装饰器中的参数传递。这将在每次更改两个值时触发函数并且将相互依赖。

@api.depends('requirements','ingredients_id')
def function (self): ....
    do something....
    return