Openerp 如何根据条件隐藏场地?
Openerp 如何根据条件隐藏场地?,openerp,odoo,openerp-8,Openerp,Odoo,Openerp 8,attrs=“{'invisible':[('rule_id.type_test','!=','A')]}”在上面的代码中不起作用,我如何解决这个问题 class test_list(models.Model): _name = 'test.list' type_test = fields.Selection([('A', 'aaaa'),('B','bbbbb')], default='A', string="Type", required=True) rule_
attrs=“{'invisible':[('rule_id.type_test','!=','A')]}”
在上面的代码中不起作用,我如何解决这个问题
class test_list(models.Model):
_name = 'test.list'
type_test = fields.Selection([('A', 'aaaa'),('B','bbbbb')], default='A', string="Type", required=True)
rule_list = fields.One2many('test.rule', 'rule_id')
test.rules.form.view
测试规则
您在attrs
中使用的字段需要显示在当前视图中
您可以将此字段添加到模型:
class test_rule(models.Model):
_name = 'test.rule'
rule_id = fields.Many2one('test.list', required=True)
type_test = fields.Selection(related='rule_id.type_test')
ul = fields.Many2one('product.ul', string='Package Logistic Unit')
然后到你的表格:
<form string="Test Rules">
<field name="type_test" invisible="1"/>
<field name="ul" attrs="{'invisible': [('type_test', '!=', 'A')]}"/>
</form>
class test_rule(models.Model):
_name = 'test.rule'
rule_id = fields.Many2one('test.list', required=True)
type_test = fields.Selection(related='rule_id.type_test')
ul = fields.Many2one('product.ul', string='Package Logistic Unit')
<form string="Test Rules">
<field name="type_test" invisible="1"/>
<field name="ul" attrs="{'invisible': [('type_test', '!=', 'A')]}"/>
</form>