要指定,我在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在其上下文中传递给新表单。如何实现这一目标?
答案 0 :(得分:1)
您的目的将通过在那里定义内联表单视图来解决。
<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>
无需传递参数来设置字段 readonly / invisible ,但您可以直接在内联视图中执行此操作。
Click here再看一个答案。
答案 1 :(得分:1)
让我猜对了:你想自动填充partner_ids吗?尝试在上下文中设置当前打开的合作伙伴,例如:
<field name="mail_message_lines" mode="tree" style="overflow:hidden;" context={'default_partner_ids':[active_id]}>...</field>