2016-01-22 28 views
1

我有一个one2many领域,如:过滤器已创建O2M场记录上按一下按钮场的基础上,在ODOO

pricelist_details = fields.One2many('price.list.details', 'price_list_id', string='Price List Details', copy=True) 

和xml这样的:

<notebook> 
    <page> 
     <field name="pricelist_details" nolabel="1" widget="one2many_list"> 
      <tree string="Price List Details" editable="bottom" create="false"> 
       <field name="state" invisible="1"></field> 
       <field name="date_time" attrs="{'required': True, 'readonly': True}"></field> 
       <field name="company_id" attrs="{'required': True, 'readonly': True}"></field> 
       <field name="category_id" attrs="{'required': True, 'readonly': True}"></field> 
       <field name="grade" attrs="{'required': True, 'readonly': True}"></field> 
       <field name="ex_mill" attrs="{'required': True, 'readonly': True}"></field> 
       <field name="sale_price_per_lb" attrs="{'required': True, 'readonly': [('state', '!=', 'draft')]}"></field> 
       <field name="price_per_bag" attrs="{'required': True, 'readonly': True}"></field> 
      </tree> 
     </field> 
    </page> 
</notebook> 

点击一个按钮全部记录被创建并显示在该字段的GUI上。 我现在已经增加了一些过滤领域本场旁,如:

minor = fields.Many2one('product.minor',string='Minor') 
sub_category = fields.Many2one('product.subcategory', string='Sub Category') 

我要的是过滤这些过滤器的基础上,我one2many场的记录。我不希望任何记录被删除。只需要 即可过滤记录。 请帮我解决这个问题。

回答

0

编写字段“sub_category”的onchange方法,并根据需要填充响应。 return语句应该看起来像如下:

return {'values': {'pricelist_details': [record_set]}} 

record_set包含过滤为每场sub_category

record_set将填充如下的对象:

records_set = self.env['product.category'].search([('sub_category', '=', ID)]) 

注意: ID是您正在编写的onchange方法的已更改字段的ID。

相关问题