jinja2 - 计算 jinja2 中对象属性的乘积之和

标签 jinja2

我有一个名为“order”的对象,它有一个属性“product.price”和“quantity”。我想计算所有订单的总成本。我将所有订单作为列表传递到模板中,我希望看到 jinja2 完成这项工作。

如果我只想计算我可以做的所有价格的总和

${{ '%0.2f'| format(orders | sum(attribute='product.price')) }}

但是如何将乘法与数量属性相加呢?

最佳答案

不确定是否有一种方法可以在一行中完成此操作。但这可能有效:

{% set totals = [] %}

{% for order in orders %}
  {% if totals.append(order.product.price * order.quantity %}{% endif %}
{% endfor %}

${{ '%0.2f' | format(totals | sum) }}

关于jinja2 - 计算 jinja2 中对象属性的乘积之和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44169501/

相关文章:

python - Flask - jinja 模板 forloop 增加循环索引

python - 如何获取Jinja2生成的输入值数据?

ansible - 是否有将日期字符串转换为纪元的 ansible 函数

python - 计算表中的条目数,然后在 html 中使用 jinja 显示

python - Django 中 jinja2 模板的代码覆盖率

ansible - 如何使用带有序列和列表的嵌套循环以及如何在 Ansible 中绕过花括号

python - Python 中的模块路径

python - Jinja 在渲染后保留模板标签

Flask 渲染图像(和数据)

random - 如何创建随机字符串并在 Ansible 的 jinja 中使用它