gpt4 book ai didi

python - Django:从数据库显示的 DecimalField 格式值

转载 作者:行者123 更新时间:2023-12-01 03:50:45 24 4
gpt4 key购买 nike

我有一个带有 DecimalField 的表单:

price = forms.DecimalField(required=True, widget=forms.NumberInput(
attrs={'class': 'form-control text-right',
'style': 'text-align: right', 'step': '0.00001'}))

当我在模板中显示此字段时,它总是显示如下所示的值:如果我在 db 中的值为 145.00000,则在模板中将显示 145.00000(确定)。但如果我在db中的值为14400.00000,在模板中将显示14,400.00000(不好),因为当我通过js将此值设置为另一个字段十进制时,它将显示错误:

The specified value "14,400.00000" is not a valid number. 
The value must match to the following regular expression:
-?(\d+|\d+\.\d+|\.\d+)([eE][-+]?\d+)?

如何格式化它?我认为如果整数除法超过 3 位数字,它将显示 , 而不是 我的模板看起来像

<td>{{ form.price }}</td>

最佳答案

在将 str.replace() 渲染到模板之前,您始终可以在 Controller 级别使用 str.replace():

decimal_number = str(decimal_number).replace(",", "")

如果您想在模板级别执行此操作,那么在 Django 中您可以禁用 FloatField 格式,如下所示:

{{ form.price|stringformat:"f" }}

关于python - Django:从数据库显示的 DecimalField 格式值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38298684/

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