如何在表单中多次使用相同的字段?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在表单中多次使用相同的字段?相关的知识,希望对你有一定的参考价值。
对于需要多次使用同一字段的模块,视图xml会是什么样子?
例如。在我的场景中,我继承了视图,并希望在新页面中显示一些字段,如代码中所示。 move_lines已在父视图中使用,因此我无法获得所需的输出。
<xpath expr="/form/sheet/notebook/page[3]" position="after">
<page string="Tracking Info">
<field name="move_lines">
<tree string="Stock Moves" editable="bottom" create="false" delete="false">
<field name="product_id" readonly="True" required="1"/>
<field name="tracking_no"/>
</tree>
</field>
</page>
</xpath>
有没有更好的方法呢?
答案
我做了一些搜索,唯一的方法就是创建相关字段。
class stock_picking(models.Model):
_inherit = 'stock.picking'
move_lines_d = fields.One2many('stock.move', related='move_lines')
并在xml中使用该字段
<xpath expr="/form/sheet/notebook/page[3]" position="after">
<page string="Tracking Info">
<field name="move_lines_d">
<tree string="Stock Moves" editable="bottom" create="false" delete="false">
<field name="state" invisible="1" readonly="0"/>
<field name="product_id" readonly="True" required="1"/>
<field name="moveline_partner" readonly="True"/>
<field name="moveline_partner_address" readonly="True"/>
<field name="tracking_no"/>
<!--<field name="product_uom_qty" string="Initial Demand" readonly="True"/>-->
<!--<field name="reserved_availability" string="Reserved" readonly="True"/>-->
<field name="quantity_done" string="Done" readonly="True"/>
<!--<field name="product_uom" readonly="True" string="Unit of Measure" groups="product.group_uom"/>-->
</tree>
</field>
</page>
</xpath>
另一答案
实际上用香草(不是定制的)Odoo是不可能的,我不知道任何满足这个要求的定制。
另一答案
<record model="ir.ui.view" id="view_picking_form_with_double_move_lines">
<field name="name">stark product</field>
<field name="model">stock.picking</field>
<field name="mode">extension</field>
<field name="priority" eval="50"/>
<field name="inherit_id" ref="stock.view_picking_form"/>
<field name="arch" type="xml">
<xpath expr="/form/sheet/notebook/page[3]" position="after">
<page string="Tracking Info">
<field name="move_lines" widget="one2many"/>
</page>
</xpath>
</field>
以上是关于如何在表单中多次使用相同的字段?的主要内容,如果未能解决你的问题,请参考以下文章
Django:如何在 Django 表单中多次包含相同的字段?