qweb t-if in position attribures

时间:2016-05-04 10:10:42

标签: openerp qweb

我正在Odoo开发一个模块。我需要更改发票报告以添加一些细节。

我将xpath与position属性一起使用,并检查是否链接了一个事件以隐藏默认表。

<template id="my_invoice" inherit_id="account.report_invoice_document">
    <xpath expr="//div[@class='page']/table[@class='table table-condensed']" position="attributes">
        <attribute t-if="o.affair_id" name="class">hidden</attribute>
    </xpath>
</template>

这不起作用。即使发票未与某件事发生关联,默认表也会隐藏在每张发票中。

我不明白,因为条件适用于我的第二个模板。

<template id="my_invoice2" inherit_id="account.report_invoice_document">
    <xpath expr="//div[@class='page']/div[@class='row mt32 mb32']" position="after">
        <t t-if="o.affair_id">
            <!-- table with my additional detail -->
        </t>
    </xpath>
</template>

抱歉我的英文。我正在学习它。

1 个答案:

答案 0 :(得分:2)

试试这个:

<attribute name="t-att-style">'display: none;' if  o.affair_id else ''</attribute> 

或者甚至这个也是:

  <attribute name="t-att-class">'hidden' if  o.affair_id else ''</attribute> 

它可能对你的情况有帮助。