odoo attrs的坑

当按钮需要在某些条件下进行隐藏时,需要用到attrs

例如:报废单进行报废时需要审批

state in (draft,validate,done)

批准的按钮需要显示在 当 state=validate 

有需求为根据报废金额的大小 审批的人不同 因此多了一个level字段 

<button name="action_validate" string="Validate" state='validate' type="object" class="oe_highlight"
        attrs="{'invisible':[('level','!=','one')]}" groups="sale_product.scrap_staff"/>

界面修饰器的内容{'invisible':[('level','!=','one'),('state','!=','validate')]} 乍一看 没有任何问题 但实际上这个表示 只要条件满足其一,其他的条件就不管了 state=''validate"这个条件是肯定满足的 所以 我后面在怎么加条件都是无用的

<button name="action_validate" string="Validate" type="object" class="oe_highlight"
        attrs="{'invisible':['|',('level','!=','one'),('state','!=','validate')]}" groups="sale_product.scrap_staff"/>  改成这个就好了   

还有  attrs 判断字段为空时 只能用FALSE,不能用TRUE

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值