Odoo / OpenERP:在fields.selection中隐藏一些值

时间:2017-01-29 08:34:18

标签: python openerp

我有一个字段selectionfields.selection),其值不同。

某些值仅适用于某些自动操作。因此,当用户可以从此选择字段中选择值时,我想使其“不可见”。可能吗?我尝试attrs="{'invisible'}但没有成功。

我的领域:

'titre': fields.selection(
     (
         ('e', 'Email'),
         ('p', 'phone'),
         ('m','Post/Mail'),
         ('a', 'Automatic Action')
     ),
     'Action',
      required=True
 )

这是我的xml:

<field name="titre"/>

1 个答案:

答案 0 :(得分:0)

我不相信这个功能存在。如果我错了,有人可以纠正我。但是,您可以使用计算的选择字段。您可能希望合并上下文变量以确定需要显示哪些选项。这可以这样完成。

@api.multi
def _compute_selection(self):
    if True:
        selection_options = [('e', 'Email'), ('p', 'phone'), ('m','Post/Mail')]
    else:
        selection_options = [('a', 'Automatic Action')]
    return selection_options

field_name = fields.Selection('_compute_selection', string="Field Name")

显然,你的计算功能必须充实细节。但是,基本上你需要计算你的选择列表而不是静态定义它。