如何在Python-Django网站中计算值



我有销售数量和退货数量。我需要显示safetycoef中未退货物品的百分比。例如,有500个销售和100个退货,它必须在"安全系数"中占80%。或者1000次销售和240次退货,这意味着76%。如何实现它?

html:

<div>
{% for phone in object_list %}
<div class="smartphone" >
{% endif %}
<p>{{ phone.title }} — reliabilty {{phone.safetycoef }}%</p>
<p>Based on {{phone.sales }} sales and {{phone.returns }} returns </p>
</div>
{% endfor %}
</div>

将所有逻辑放入Python中。模板不适合这个

在您的示例中,您正在循环遍历多个电话,并希望获得各个电话未返回项目的百分比。

我将在模型上声明一个方法,并在模板中调用它:
# models.py
class Phone(models.Model):
# your attributes here
# ...
def get_reliability_percentage(self):
return (1 - (self.returns / self.sales)) * 100
然后你可以在你的模板中调用这个方法:
<div>
{% for phone in object_list %}
<div class="smartphone" >
{% endif %}
<p>{{ phone.title }} — reliabilty {{ phone.get_reliability_percentage }}%</p>
<p>Based on {{phone.sales }} sales and {{phone.returns }} returns </p>
</div>
{% endfor %}
</div>

最好的方法是在视图中计算它,然后在上下文中发送它。您也可以在html中计算它,但这并不那么容易。

最新更新