gpt4 book ai didi

python - 如何在Django中集中使用floatformat

转载 作者:行者123 更新时间:2023-11-28 16:53:26 24 4
gpt4 key购买 nike

在我的项目中,我要求用户提供一些尺寸、价格和重量。我想将数据存储为两位十进制值。我想我应该使用 DecimalField 而不是 FloatField,因为我不需要太多精度。

当我在模板中打印值时,我不希望打印零个无意义的小数。

例子:

10.00 应该只显示 10

10.05 应该显示 10.05

我不想在每个显示值的模板中都使用 floatformat 过滤器,太多地方了。所以我想知道是否有某种方法可以以集中的方式影响为所有应用程序呈现的值(value)。

谢谢

最佳答案

你试过django插件了吗Humanize

您可能会在那里找到您要找的东西。

编辑

你是对的,人性化过滤器在这里不起作用。在深入了解 django 内置过滤器和标签后,我找不到任何可以解决您问题的方法。因此,我认为您需要一个自定义过滤器。像...

from django import template

register = template.Library()

def my_format(value):
if value - int(value) != 0:
return value
return int(value)

register.filter('my_format',my_format)
my_format.is_safe = True

在您的 django 模板中,您可以做类似...

{% load my_filters %}
<html>
<body>
{{x|my_format}}
<br/>
{{y|my_format}}
</body>
</html>

对于值 xy,分别显示 1.01.1:

  1
1.1

希望对您有所帮助。

关于python - 如何在Django中集中使用floatformat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4098920/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com