我试图链接来自Odoo中不同类的字段。
它应该类似于外键。

这是我的情况:
有2个类具有自己的树形视图。

第1类:opc_taginstellingen:

class opc_taginstellingen(models.Model):
    _name = 'opc_taginstellingen'

    Tagnaam = fields.Char(string="Tagnaam")
    Unit = fields.Char(string="Unit")


第2类:opc_actuelewaardentags

class opc_actuelewaardentags(models.Model):
    _name = 'opc_actuelewaardentags'

    TagNaam = fields.Char(string="Tagnaam")
    TagWaarde = fields.Integer(string="Tagwaarde")


我现在想做的是:

在opc_actuelewaardentags中,从opc_taginstellingen获得Unit,其中TagNaam(opc_actuelewaardentags)== Tagnaam(opc_actuelewaardentags)。

然后,我希望能够在opc_actuelewaardentags的树形视图中显示Unit。但是我想那不会有问题。

还请注意Tagnaam和TagNaam的区别。

到目前为止我尝试过的是:

我一直在研究关系领域,包括many2one,one2many和many2many。尚无法使用...

这是我在类opc_actuelewaardentags中添加的内容,但是没有用:

Unit1 = fields.Many2one('opc_taginstellingen', string="Unit1")
Unit1 = fields.Related('Unit', type="Many2One", relation="opc_taginstellingen", string="Unit1")
Unit1 = fields.Char(related='opc_taginstellingen.Unit', store=True)


编辑:在BSL Technologies发表评论后,我将所有内容都更改为小写,因此不会成为问题。

没有错误。但是,单位值不会显示在opc_actuelewaardentags的树视图中。标题确实如此。

现在是我的代码:

class opc_taginstellingen(models.Model):
    _name = 'opc_taginstellingen'

    tagnaam = fields.Char(string="Tagnaam")
    unit = fields.Char(string="unit")

class opc_actuelewaardentags(models.Model):
    _name = 'opc_actuelewaardentags'

    tagnaam = fields.Char(string="Tagnaam")
    opc_tag = fields.Many2one('opc_taginstellingen', string="unit")
    unit = fields.Char(related='opc_tag.unit',string="unit")


还有别的为什么这行不通吗?

最佳答案

该字段需要添加到opc_actuelewaardentags类中。

opc_tag = fields.Many2one('opc_taginstellingen', string="Unit1")
unit = fields.Char(related='opc_tag.Unit',string="Unit")

关于python - Odoo:如何将字段彼此链接?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31814403/

10-10 11:05