0被视为"无"小数点django

时间:2016-05-06 10:41:11

标签: django

我有以下型号字段:

expenses = models.DecimalField(null=True, blank=True, max_digits=11, decimal_places=2, validators=[MinValueValidator(0)])

我的问题:

如果用户设置为0,则Django视为"无"当它应该是0.它应该只显示为"无"如果没有价值归因于它。对此有什么简单的解决方法吗?

2 个答案:

答案 0 :(得分:0)

使用MinValueValidtor

Decimal中设置值
expenses = models.DecimalField(null=True, blank=True, max_digits=11, decimal_places=2, 
                               validators=[MinValueValidator(Decimal('0.00'))])

答案 1 :(得分:0)

查看上面的评论似乎问题是您使用的模板标记default会将0评估为假值并显示您的默认值。

你想要的是default_if_none(只会匹配None而不是0):https://docs.djangoproject.com/en/1.10/ref/templates/builtins/#default-if-none