限制选择

时间:2012-11-28 15:38:11

标签: openerp

如何限制视图中的选择选项?例如account.voucher有4种类型选项,但我想只显示其中的两种。你如何在视图定义中实现这一目标?

2 个答案:

答案 0 :(得分:2)

如果选择应用于关系字段(o2m,m2m),则可以在xml视图本身上使用域。如果选择实际上是一个选择字段,我担心你无法从XML中做到这一点。

您应该可以通过覆盖fields_view_get(或fields_get目前无法记住)来实现这一目标。从那里你可以操纵你想要的所有东西,但你必须处理python代码和XML构建。

grep "def $your_method_here" *进入addons文件夹是你的朋友;)

答案 1 :(得分:2)

使用domain属性。

<field name="voucher_id" domain="[('type','in',['payment','receipt'])]"/>

这也可以直接在业务对象模型中完成:

_columns = {
    'voucher_id': fields.many2one('account.voucher', 'Voucher', 
                  domain="[('type','in',['payment','receipt'])]",
}