【问题标题】:How to format Qweb variables in Odoo如何在 Odoo 中格式化 Qweb 变量
【发布时间】:2017-08-08 06:27:38
【问题描述】:

我一直试图在 qweb 中显示一个用逗号分隔的计算变量。

<td align="right">
                      <t t-set="total" t-value="0"/>
                          <t t-foreach="l.invoice_line_tax_id" t-as="t">
                          <t t-set="total" t-value="total + (t.amount * 
l.price_subtotal)" />
                          </t>
                          <span t-esc="'%.2f'%(l.price_subtotal + total)"/>

                </td>

-

此行显示带小数点的值,而小数点前的数字不以逗号分隔。

例如,上面的代码会将值显示为 400000.00 而我希望它是 4,00,000.00

有人对此有任何想法吗?

【问题讨论】:

    标签: xml odoo odoo-8 qweb


    【解决方案1】:

    试试下面的代码,

    <span><t t-esc="'{0:,.2f}'.format(inv_value)"/></span>
    

    希望对你有所帮助。

    【讨论】:

      【解决方案2】:

      这个可以帮到你:

      您需要在 *.py 端计算总计。通过像这样创建函数字段。

      total = fields.Float('Total', compute='_cal_total') 
      
      @api.one
      def _cal_total(self):
           self.total = t.amount * l.price_subtotal
      

      并像这样显示在 *.xml 字段中。

      <field name="total" widget='monetary'
      options="{'currency_field': 'currency_id'}" />
      

      【讨论】:

      • 这可能会有所帮助,但我不想在 .py 文件中声明字段。现在我只是在 qweb 报告中声明一个字段。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 2019-06-16
      相关资源
      最近更新 更多