我已将我的 order_line 设置为可编辑,并且如果它不处于草稿模式,我想删除删除按钮。我尝试了以下操作,但删除按钮仍然存在:
<xpath expr="//field[@name='order_line']//tree" position="attributes">
<attribute name="delete" domain="[(parent.state,'!=','draft')]"/>
</xpath>
是否可以根据父级的草稿状态动态设置 delete=false ?
我试过这个:
<record id="delete_drafts_only" model="ir.rule">
<field name="name">You can only delete items with draft parents</field>
<field name="model_id" ref="sale.model_sale_order_line"/>
<field name="global" eval="True"/>
<field name="domain_force">[('parent.state', '=', 'draft')]</field>
<field name="perm_unlink" eval="True"/>
</record>
和
<record id="delete_drafts_only" model="ir.rule">
<field name="name">You can only delete items with draft parents</field>
<field name="model_id" ref="sale.model_sale_order_line"/>
<field name="global" eval="True"/>
<field name="domain_force">[('parent.state', '!=', 'draft')]</field>
<field name="perm_read" eval="True"/>
<field name="perm_write" eval="True"/>
<field name="perm_create" eval="False"/>
<field name="perm_unlink" eval="False"/>
</record>
但它似乎并不真正适用。唯一似乎起作用的是操纵ir_model_access
,但这会在全局范围内切换它,这不是我想要的。