如何在看板视图 odoo 0.8 上访问 one2many 字段值?
How to access one2many fields values on Kanban view odoo 0.8?
我需要遍历看板中归档的 o2m 记录,以显示我需要从其他模型获得的信息。
我需要在看板视图中执行此操作
<t t-foreach="o2m_field" t-as"record">
<t t-esc="record.name"/>
</t>
可以吗?
是的,你可以。
这个问题与 Is it possible to show an One2many field in a kanban view in Odoo? 重复,但这里有一个 link 来自 Serpent Consulting 的模块,它将能够满足您的需求。
https://apps.openerp.com/apps/modules/8.0/web_one2many_kanban/
这里有更多信息。
<kanban>
<field name="one2manyFieldname"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_content">
<p>
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
<t t-esc="o.name"/><br/>
</t>
</p>
</div>
</t>
</templates>
</kanban>
重要的部分是在模板标签之前,您必须通过 one2many 字段,以便它在您的模板中可用。然后您必须访问记录的 "raw_value" 并给它一个别名。像这样。
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
然后就可以访问记录的属性了。
在 t-foreach 标签的范围内,您可以像这样访问记录的属性。
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
ID: <t t-esc="o.id"/><br/>
Name: <t t-esc="o.name"/><br/>
Write Date: <t t-esc="o.write_date"/><br/>
Write UID: <t t-esc="o.write_uid"/><br/>
Some Property: <t t-esc="o.some_property"/><br/>
<br/>
</t>
您应该能够访问您已添加别名的每条记录的属性(在本例中为 'o')。不要从字面上理解以上内容。 html 和 css 的布局和样式由您决定。以及您选择显示的记录的属性。
Many2one 值作为元组提供。像这样访问 many2one 属性。
Many2one ID: <t t-esc="o.partner_id[0]"/>
Many2one Name: <t t-esc="o.partner_id[1]"/>
对于 Odoo14
<!-- Your parent form groups and field goes here -->
<field name="your_one2many_field" nolabel="1">
<kanban class="o_kanban_mobile">
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div class="oe_kanban_details">
<div class="o_kanban_record_top">
<div class="o_kanban_record_headings">
<strong class="o_kanban_record_title">Title Goes Here</strong>
</div>
</div>
<b>Label 1: </b><field name="field_1"/><br/>
<b>Label 2: </b> <field name="field_2"/><br/>
<b>Label 3:</b> <field name="field_3"/><br/>
</div>
</div>
</t>
</templates>
</kanban>
<form>
your_one2many_field form goes here....
</form>
</field>
我需要遍历看板中归档的 o2m 记录,以显示我需要从其他模型获得的信息。
我需要在看板视图中执行此操作
<t t-foreach="o2m_field" t-as"record">
<t t-esc="record.name"/>
</t>
可以吗?
是的,你可以。
这个问题与 Is it possible to show an One2many field in a kanban view in Odoo? 重复,但这里有一个 link 来自 Serpent Consulting 的模块,它将能够满足您的需求。
https://apps.openerp.com/apps/modules/8.0/web_one2many_kanban/
这里有更多信息。
<kanban>
<field name="one2manyFieldname"/>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_content">
<p>
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
<t t-esc="o.name"/><br/>
</t>
</p>
</div>
</t>
</templates>
</kanban>
重要的部分是在模板标签之前,您必须通过 one2many 字段,以便它在您的模板中可用。然后您必须访问记录的 "raw_value" 并给它一个别名。像这样。
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
然后就可以访问记录的属性了。
在 t-foreach 标签的范围内,您可以像这样访问记录的属性。
<t t-foreach="record.one2manyFieldname.raw_value" t-as='o'>
ID: <t t-esc="o.id"/><br/>
Name: <t t-esc="o.name"/><br/>
Write Date: <t t-esc="o.write_date"/><br/>
Write UID: <t t-esc="o.write_uid"/><br/>
Some Property: <t t-esc="o.some_property"/><br/>
<br/>
</t>
您应该能够访问您已添加别名的每条记录的属性(在本例中为 'o')。不要从字面上理解以上内容。 html 和 css 的布局和样式由您决定。以及您选择显示的记录的属性。
Many2one 值作为元组提供。像这样访问 many2one 属性。
Many2one ID: <t t-esc="o.partner_id[0]"/>
Many2one Name: <t t-esc="o.partner_id[1]"/>
对于 Odoo14
<!-- Your parent form groups and field goes here -->
<field name="your_one2many_field" nolabel="1">
<kanban class="o_kanban_mobile">
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_global_click">
<div class="oe_kanban_details">
<div class="o_kanban_record_top">
<div class="o_kanban_record_headings">
<strong class="o_kanban_record_title">Title Goes Here</strong>
</div>
</div>
<b>Label 1: </b><field name="field_1"/><br/>
<b>Label 2: </b> <field name="field_2"/><br/>
<b>Label 3:</b> <field name="field_3"/><br/>
</div>
</div>
</t>
</templates>
</kanban>
<form>
your_one2many_field form goes here....
</form>
</field>