仅当 qweb var 为真时,如何在 qweb 中添加样式而不重复代码?

How add a style in qweb only if a qweb var is true, without duplicate the code?

我想要输出 20 td 的 css 样式取决于 qweb 变量。 有没有其他方法可以像这样复制整个代码:

<table>
...
<td>
<t t-if="line_odd">
  <td class="padding-top"><p t-esc="line.field1">...</td>
...
  <td class="padding-top"><p t-esc="line.field20" />...</td>
</td>

<t t-if="not line_odd">
  <p class="no-padding-top"><p t-esc="line.field1">...</td>
...
  <p class="no-padding-top"><p t-esc="line.field20">...</td>
</td>

因为此代码无效 一)

<tr>
  <t t-if="line_odd">
     <td class="padding-top">
  </t>
  <t t-if="not line_odd">
     <td class="padding-top">
  </t>
     <p>...</p>
  </td>
</td>

b)

<td <t t-if="true">class='padding-top'</t> >
   <p>...</p>
</td>

如果需要合并默认字符串,请使用 t-att-classt-attf-class

<td t-att-class="line_odd and 'no-padding' or 'padding-top'">

<td t-attf-class="foo #{line_odd and 'no-padding' or 'padding-top'}">

参见docs