使用t-set设置变量的值
来自Odoo大V社-odoo中文开发手册
对于更复杂的逻辑,我们可以将表达式的结果存储到变量中,以便以后在模板中使用它。要做到这点,需要使用t-set指令,命名的变量并通过t-value指令设置计算指定的值表达式。
例如,下面的代码将错过最后期限的渲染为红色,就像在上一节中,但使用red_or_black变量为CSS类的使用,如下所示:
<t t-set="red_or_black" t-value=" record.date_deadline.raw_value and record.date_deadline.raw_value lte (new Date()) ? 'oe_kanban_text_red' : ''" /> <li t-att-class="red_or_black"> <field name="date_deadline" /> </li>
变量也可以将HTML内容分配给变量,如下面的示例:
<t t-set="calendar_sign"> <span class="oe_e"></span> </t> <t t-raw="calendar_sign" />
oe_e CSS类使用 Entypo pictogram字体。代表日历符号的HTML被存储在变量中,这个变量在模板需要时可以使用它。Font Awesome图标集也非常好用,可能已被使用。
上一节:使用t-esc和t-raw来渲染值 下一节:使用t-call插入其他模板