我正在尝试链接Odoo中不同类的字段。 它应该类似于外键。
这是我的情况: 有两个类有自己的树视图。
第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。但我想这不会成为一个问题。
另请注意区别标记 n aam和标记 N aam。
到目前为止我尝试了什么:
我一直在玩关系领域,很多人,很多人,很多人。无法让它工作......
这是我在课堂上提出的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")
还有什么其他原因不起作用吗?
答案 0 :(得分:1)
此字段需要添加到opc_actuelewaardentags类。
opc_tag = fields.Many2one('opc_taginstellingen', string="Unit1")
unit = fields.Char(related='opc_tag.Unit',string="Unit")