odoo t-raw / t-if 条件内的参数

odoo t-raw / argument inside t-if condition

我在 Odoo V12 中尝试,如果用户有签名,应该打印出来。如果不是,则应仅使用静态文本。 我试过这个:

<div>
    <p t-if="record.user_id and record.user_id.signature">
        t-raw="record.user_id.signature"</p>
    <p t-else="">just the company name</p>
/div>

但这只会以 "t-raw="record.user_id.signature" 作为文本显示结束。

有什么建议吗? 谢谢

签名是 HTML 代码本身,所以它不应该在 p 标签中。只需尝试使用 t 标签并为您的 else:

添加 p
<div>
    <t t-if="record.user_id.signature" t-raw="record.user_id.signature" />
    <t t-else=""><p>just the company name</p></t>
</div>

您可能需要扩展 if 条件,因为在 Odoo 中清空签名或任何 HTML 字段之后会用 <p><br></p> 填充该字段。