我正在重构一个模型(我们称之为Parent
),它存储了许多引用同一模型(Child
)记录的 Many2one 字段。Parent
表单视图包含一个notebook
,每个都page
显示一个特定的详细信息,Child
当前在page
中以重复的方式描述并具有许多相关字段。我试图避免视图中的重复,并摆脱对相关字段的需求。
class Child(models.Model):
_name = "child"
# ...
class Parent(models.Model):
_name = "parent"
child_1 = fields.Many2one('child', 'Child 1')
child_1_age = fields.Float(related='child_1.age', string='Child Age')
# ...
child_2 = fields.Many2one('child', 'Child 2')
child_2_age = fields.Float(related='child_2.age', string='Child Age')
# ...
<!-- ... -->
<field name="model">parent</field>
<field name="type">form</field>
<field name="arch" type="xml">
<notebook colspan="8" col="8">
<page>
<!-- buttons, a bunch of related Child fields, etc -->
</page>
<page>
<!-- buttons, a bunch of related Child fields, etc -->
</page>
</notebook>
</field>
我为 定义了一个特殊的表单视图Child
,但我不知道如何将它插入notebook
到视图的页面中Parent
。由于可以在表单中插入树视图(例如 One2many 字段),我想也必须有一种方法来处理表单。一个如何实现这种效果的例子将不胜感激。
请忽略任何语法错误,以上只是一个简单的视觉表示,以帮助更好地描述我的情况。