我选择特定日记时,我想隐藏一个字段。
<field name="any_field" attrs="{'invisible':[('journal_id','=',10])]}"/>
对于上面的代码工作正常。
我确定这不是检查条件的方法。所以,我试过这种方式。
<field name="any_field" attrs="{'invisible':[('journal_id','=',ref('my_module.account_journal_10'))]}"/>
它工作然后我尝试使用期刊上的静态字段,例如。代码。
<field name="any_field" attrs="{'invisible':[('journal_id.code','=','CARD')]}"/>
但仍然没有工作,并从视图中获得错误。
我在想,如果我可以像。域名一样从.py返回attrs。
例如
return {'domain':
{
'any_field':[('journal_id','=',self.env.ref('my_module.account_journal_10').id)]
}
}
有人可以帮助我吗? 谢谢。
答案 0 :(得分:2)
据我所知,这些attrs
域/过滤器是客户端的,因此您无法使用journal_id.code
或partner_id.customer
之类的内容,因为客户端不知道这样的内容数据
可能的解决方法是在您尝试执行此操作的模型上定义相关字段。我们假设模型为my.model
,并且已经有Many2one
字段journal_id
:
journal_code = fields.Char(string="Journal Code", related="journal_id.code")
现在您需要扩展my.model
的视图:
<field name="journal_code" invisible="1" />
<field name="any_field" attrs="{'invisible':[('journal_code','=','CARD')]}"/>