在父视图中添加字段

时间:2015-03-20 13:24:55

标签: odoo

当我尝试在父视图中添加字段时,我遇到了一些问题。 课程是:

class VademecumFraccionamiento(models.Model):
    _name = 'farmacia.vademecum_fraccionamiento'

    _inherits={
        'farmacia.vademecum': 'vademecum_id'
    }

    hijo = fields.Many2one('farmacia.vademecum_fraccionamiento', string="Artículo hijo", index=True)
    vademecum_id = fields.Many2one('farmacia.vademecum', string='Artículo Padre', required=True, ondelete='cascade', index=True)    

xml是:

<record model="ir.ui.view" id="farmacia_vademecum_fraccionamiento_form_view">
            <field name="name">farmacia_vademecum_fraccionamiento.form</field>
            <field name="model">farmacia.vademecum</field>
            <field name="inherit_id" ref="farmacia_vademecum.farmacia_vademecum_form_view"/>
            <field name="arch" type="xml">
                <xpath expr="//page[@string='lalala']" position="after">
                    <page string="Fracc">
                    </page>
                </xpath>
                <xpath expr="//page[@string='Fracc']" position="inside">
                    <group>
                        <field name="vademecum_id">
                        </field>
                     </group>
                </xpath>
            </field>
        </record>

错误是: 错误详情: 字段vademecum_id不存在

我不知道如何解决这个问题。 提前致谢

3 个答案:

答案 0 :(得分:0)

您应该参考addons / product / product_view.xml以获取更多帮助,在这些帮助中,您将获得与继承相关的所有问题的答案。

答案 1 :(得分:0)

我会将代码更改为:

_columns = {
    'hijo' : fields.Many2one('farmacia.vademecum_fraccionamiento', string="Artículo hijo", index=True),
    'vademecum_id' : fields.Many2one('farmacia.vademecum', string='Artículo Padre', required=True, ondelete='cascade', index=True),
        }

这会将字段添加到模型中

答案 2 :(得分:0)

odoo中有两个概念用于字段继承。

_inherit :可以用于扩展现有模型。

示例:在res.partner模型中添加出生日期字段

class res_partner(models.Model):
    _inherit = 'res.partner'

    birth_date = fields.Date('Birthdate')

_inherits :可用于您想要熟悉当前模型中的模块字段。

示例:在学生模型中使用客户字段

class Student(models.Model):
    _name = 'stundent.student'

    _inherits = {'res.partner': partner_id}

    partner_id = fields.Many2one('res.partner', 'Partner')

在模型中添加partner_id字段后,您可以在学生表单的xml视图中使用合作伙伴的所有字段。树。

希望这有帮助。