将一些参数从操作传递到表单视图
Posted
技术标签:
【中文标题】将一些参数从操作传递到表单视图【英文标题】:Pass some parameters from the action to a form view 【发布时间】:2016-06-17 15:58:45 【问题描述】:要指定,我在 base.view_partner_form 上。我在那里插入了一个新页面,如下所示:
<record id="view_partner_get_Emails" model="ir.ui.view">
<field name="name">res.partner.property.form.inherit</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_partner_form" />
<field name="arch" type="xml">
<page name="internal_notes" position="before">
<page string="Emails">
<field name="mail_message_lines" mode="tree" style="overflow:hidden;">
<tree string="Emails">
<field name="date" />
<field name="subject" />
<field name="partner_ids" />
<field name="cc" />
<field name="email_from" />
<field name="body" style="height: 40px; overflow:hidden;" />
</tree>
</field>
</page>
</page>
</field>
</record>
此页面包含我在mail.message 表中插入的一些电子邮件(mail.message 和 res.partner 之间的many2many 关系)
点击任何电子邮件,mail.view_message_form 打开,我也修改了(设置某些字段为只读)。
我的问题如下:当我单击 res.partner 表单中的电子邮件时,我希望将该合作伙伴的 ID 传递到其上下文中的新表单。如何实现?
【问题讨论】:
【参考方案1】:让我猜对了:你想自动填充 partner_ids 吗?尝试在上下文中设置当前打开的伙伴,例如:
<field name="mail_message_lines" mode="tree" style="overflow:hidden;" context='default_partner_ids':[active_id]>...</field>
【讨论】:
我并不完全想这样做,我只想在我的新表单中传递 partner_id 以便我可以进行一些搜索。您的回答帮助我解决了我的问题。谢谢 你能用当前没有保存的新记录试试这个吗?因为只有 active_id 并且只有在保存任何记录后才可用。【参考方案2】:您的目的将通过在此处定义内联表单视图来解决。
<page string="Emails">
<field name="mail_message_lines" mode="tree" style="overflow:hidden;">
<tree string="Emails">
<field name="date" />
<field name="subject" />
<field name="partner_ids" />
<field name="cc" />
<field name="email_from" />
<field name="body" style="height: 40px; overflow:hidden;" />
</tree>
<form string="Emails">
<field name="date" readonly="1" />
<field name="subject" readonly="1" />
<field name="partner_ids" readonly="1" />
<field name="cc" />
<field name="email_from" />
<field name="body" style="height: 40px; overflow:hidden;" />
</form>
</field>
</page>
不需要传递参数来设置字段只读/不可见,但是您可以直接在内联视图中执行此操作。
Click here查看更多答案。
【讨论】:
以上是关于将一些参数从操作传递到表单视图的主要内容,如果未能解决你的问题,请参考以下文章