我正在尝试根据模型中的其他字段生成不同的选择选项。我在Odoo 8工作。 以下是代码:
我的模特:(test.py)
type = fields.Selection(selection='_get_selection', string='Type')
@api.onchange('role_name')
def _get_selection(self):
choise = []
if self.role_name == 'primary':
choise.append(('unit','Unit Case'))
if self.role_name == 'reserve':
choise.append(('res','Reserve Case'))
return choise
视图:(template.xml)
<field name="type" widget="selection"/>
但是我没有在选择字段中看到任何值。
请帮助。
谢谢,
答案 0 :(得分:1)
@api.model
def _get_selection(self):
#DO SOMETHING
return choise
type = fields.Selection(selection=_get_selection, string='Type')
答案 1 :(得分:1)
这是来自Odoo 8中的'account.invoice'的示例:
@api.model
def _get_reference_type(self):
return [('none', _('Free Reference'))]
reference_type = fields.Selection('_get_reference_type', string='Payment Reference',
required=True, readonly=True, states={'draft': [('readonly', False)]},
default='none')
这可以帮助您解决问题。