按钮不可见,条件从字段



这是我的py

purchase_type = fields.Selection([
('import', 'Import'),
('local', 'Local'),
], string='Purchase Type')

这是我的xml

<button name="action_approve" string="Approve" type="object" states="confirm" groups="ts_addons_tbk.group_tbk_director,ts_addons_tbk.group_tbk_exim,ts_addons_tbk.group_tbk_manager"  />

我想使按钮只在purchase_type为import且组为ts_addons_tbk时可见。Group_tbk_director和ts_addons_tbk.group_tbk_exim。谢谢你,先生。

您可以使用attrs:

attrs="{'invisible': [('purchase_type', '!=', 'import')]}">

根据文档(查看列表视图按钮链接):

states is shorthand for invisible attrs和应该是一个状态列表,逗号分隔,要求模型有一个状态字段,并且它在视图中使用。

Odoo警告statesattrs结合使用:

将状态与attrs结合使用可能会导致意想不到的结果,因为域与逻辑AND结合使用。

编辑:

可以删除states,只使用attrs(OR操作符):

attrs="{'invisible': ['|', ('purchase_type', '!=', 'import'), ('state', '!=', 'confirm')]}" 

最新更新