在我的 Django 模型中,我创建了一个像这样的小数字段:
price = models.DecimalField(_(u'Price'), decimal_places=2, max_digits=12)
显然,价格为负或零是没有意义的。有没有办法将十进制数限制为正数?
或者我是否必须使用表单验证来捕获它?
原文由 Houman 发布,翻译遵循 CC BY-SA 4.0 许可协议
你可以这样做:
# .....
class priceForm(ModelForm):
price = forms.DecimalField(required=False, max_digits=6, min_value=0)
这也负责“价格”的验证器值。
原文由 Nick Cuevas 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
使用
MinValueValidator
。