Odoo 16 QWEB如何仅在备注字段非空时显示元素?
Odoo 16.0 报表备注字段条件显示的正确实现
原代码存在两个问题:
<t>标签语法错误,缺少闭合的>符号- 使用
len(o.note)判断可能触发报错——当o.note为None时,len()方法无法调用
以下是两种正确的实现方式:
基础实现(适用于字段值为非空字符串/非None的场景)
<t t-if="o.note"> <div t-field="o.note" style="border:1px solid black;"></div> </t>
Odoo QWeb模板中,t-if会自动判断字段是否为有效非空值(非空字符串、非False、非None),满足条件时才渲染内部的div元素。
严谨实现(排除空白字符的场景)
如果需要排除仅包含空白字符的情况,可以添加strip()处理:
<t t-if="o.note and o.note.strip()"> <div t-field="o.note" style="border:1px solid black;"></div> </t>
内容的提问来源于stack exchange,提问作者Seeker
相关产品推荐
相关产品推荐

