树状检视中的2个栏位

时间:2018-07-26 15:17:23

标签: odoo odoo-8 odoo-9

在产品类别中,我添加了一个product_ids字段,并希望使用树形视图显示该字段,其中显示了产品的名称和default_code。由于某种原因,我收到错误消息“字段default_code不存在”

<record id="view_product_category_qty_discount" model="ir.ui.view">
    <field name="name">product.category.inherit.qty.discount.Config Hetlita</field>
    <field name="model">product.category</field>
    <field name="type">form</field>
    <field name="inherit_id" ref="product.product_category_form_view" />
    <field name="arch" type="xml">
        <form position="inside">
            <group col="2" colspan="2">
                <separator string="Quantity for discount" colspan="2"/>
                <field name="qty_for_discount" />
            </group>
            <group>
                <field name="product_ids" widget="many2many_tags"/>
                <tree>
                    <field name="name"/>
                    <field name="default_code"/>
                </tree>
            </group>
        </form>
    </field>
</record>
class ProductCategory(models.Model):
    _inherit = 'product.category'

    qty_for_discount = fields.Float(string='Qty For Discount')
    product_ids = fields.Many2many(
        'product.template', string='Products')

1 个答案:

答案 0 :(得分:1)

那是因为在模型product.template上没有default_code,而在模型product.product上没有default_code。我会将product.category上的字段更改为product.product上的One2Many:

    product_ids = fields.One2many(
        comodel_name='product.product',
        inverse_name='categ_id',
        string='Products')

您的xml中有一个错误:

                    <group>
                        <field name="product_ids">
                            <tree>
                                <field name="name"/>
                                <field name="default_code"/>
                            </tree>
                        </field>
                    </group>