【发布时间】:2016-11-23 21:09:32
【问题描述】:
我在 odoo 中创建了一个电子邮件模板。它的模型是sale.order,我正在使用${object.name}从这个模型中调用字段。现在我想在此模板中添加更多来自其他表 stock.picking 的字段,但我不知道如何从电子邮件模板中的其他表中调用字段。
我在模板文件中使用了for循环但没有成功。
template.xml
<record id="order_alert_warehouse_email_template" model="email.template">
<field name="name">TOV- Alert When Order Ship Out</field>
<field name="email_from">processing@tovfurniture.com</field>
<field name="subject">Tov Furniture Notification Mail ${object.name}- Order Shipped</field>
<field name="email_to">leftwarehouse@tovfurniture.com</field>
<field name="model_id" ref="sale.model_sale_order"/>
<field name="auto_delete" eval="True"/>
<!--<field name="report_template" ref="sale.report_sale_order"/>
<field name="report_name">
${(object.name or '').replace('/','_')}_${object.state == 'draft' and 'draft' or ''}
</field>-->
<field name="lang">${object.partner_id.lang}</field>
<field name="user_signature" eval="False"/>
<field name="body_html"><![CDATA[
<p>${object.name} is shipped!</p>
<p>Reference number is ${object.client_order_ref}</p>
<p>Scheduled date is ${object.expected_date}</p>
<p>Tracking number is
% for stock in object.stock_ids:
${stock.carrier_tracking_ref}
% endfor
</p>
<p>All the Best,</p>
<p>Your friends at TOV</p>
]]></field>
</record>
这里的跟踪号字段 carrier_tracking_ref 来自另一个表 stock.picking。
【问题讨论】:
-
您是否遇到任何错误或者渲染的模板只是纯白色?
-
不,我没有收到任何错误,跟踪字段未显示跟踪号,但我通过正确添加 for 循环来解决它。
标签: xml templates openerp odoo-8 email-templates