我必须根据属性组过滤销售订单行上的属性。 我想在销售订单行中选择一个组,然后在字段中,property_ids应显示所选特定组的属性链接。
我在sale_stock.py
中添加了一个属性组列表 'group_id': fields.many2one('mrp.property.group', 'Property Group'),
'property_ids': fields.many2many('mrp.property', 'sale_order_line_property_rel', 'order_id', 'property_id', 'Properties', readonly=True, states={'draft': [('readonly', False)]}),
我写了一个onchange函数
def on_change_group(self, cr, uid, ids, group_id):
v = {}
list_data = []
if group_id:
group_property_ids = self.pool.get('mrp.property').search(cr, uid, [('group_id', '=', group_id)])
for record in self.pool.get('mrp.property').browse(cr, uid, group_property_ids):
list_data.append({'property_id': record.id})
v['property_ids'] = list_data
return {'value':v}
sale_stock_view.xml
<field name="group_id" widget="selection" on_change="on_change_group(group_id)" />
<field name="property_ids" widget="many2many_tags"
groups="sale.group_mrp_properties"/>
此代码不会出现任何错误,但属性字段中没有发生过滤器
任何人都可以帮助我吗?
答案 0 :(得分:2)
尝试使用域
,而不是使用onchange<field name="property_ids" widget="many2many_tags" domain="[('group_id','=',group_id)]" groups="sale.group_mrp_properties"/>