0

在我们正在开发的 python/django 应用程序中,当呈现 html 模板时,我得到一个除以零的错误。罪魁祸首是以下行...

<div class="bar bar-success" style="width: {{ account.de_paid|mul:100|div:account.de_owing|floatformat:"0" }}%"><span class="center"><strong>{{ account.de_paid|mul:100|div:account.de_owing|floatformat:"0" }}%</strong></span></div>

account.de_paid 和 account.de_owing 的值当然是由视图传递到页面中的。问题是......我怎样才能防止这个除以零的问题,因为 account.de_owing 经常为零?建议?

4

1 回答 1

0

因为无论如何,除以零将返回 NaN,并且您可能希望产生更有意义的消息,所以我会使用一个条件:

{% if account.de_owing == 0 %}
<div class="bar bar-success" style="width: 0%;"><span class="center"><strong>?</strong></span></div>
{% else %}
<div class="bar bar-success" style="width: {{ account.de_paid|mul:100|div:account.de_owing|floatformat:"0" }}%;"><span class="center"><strong>{{ account.de_paid|mul:100|div:account.de_owing|floatformat:"0" }}%</strong></span></div>
{% endif %}

(顺便说一句,您width在内联样式之后缺少一个分号)。

于 2013-10-31T20:28:52.793 回答