在odoo电子邮件模板中格式化日期

Formatting date in odoo email template

在 odoo 9 中,我需要在电子邮件模板内的 %d/%m/%Y 中格式化 date_invoice:

Invoice date: ${object.date_invoice}

上面的代码 return 2017-03-31 但它在错误的语言环境中。

我如何格式化才能获得 31/03/2017?

Qweb 有一个 format_tz() 函数这里是一个例子

${format_tz(object.write_date, tz='UTC', format='%d/%m/%Y')}

现在我认为这个函数可能只适用于日期时间,但您可能会向模型添加一个新字段,该字段是根据您拥有的日期字段计算得出的,并称之为一天。

你可以在这里找到一个用法event/data/email_template_data.xml

您可以使用其他不同的方式实现。

${ object.date_invoice 和 object.date_invoice.split('-')[1] + '/' + object.date_invoice.split('-') [2] + '/' + object.date_invoice.split('-')[0] 或 ''}