我有以下型号字段:
expenses = models.DecimalField(null=True, blank=True, max_digits=11, decimal_places=2, validators=[MinValueValidator(0)])
我的问题:
如果用户设置为0,则Django视为"无"当它应该是0.它应该只显示为"无"如果没有价值归因于它。对此有什么简单的解决方法吗?
答案 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