python - Django Modelform 在 FloatField 上设置最小值

标签 python django constraints modelform

我正在尝试在我的模型表单中的表单级别设置 min_value 属性。

表格.py

class ProductForm(forms.models.ModelForm):
    class Meta:
        model = Artikel
        localized_fields = '__all__'
        fields = ('price',)

模型.py

class Artikel(models.Model):
    price = models.FloatField(help_text ='Price')

如何设置模型以限制模型允许的值? 我希望用户只输入大于或等于 0.01 的值。 我不想限制在数据库级别,因为我不想在这方面限制自己。

最佳答案

您可以覆盖 ModelForm 的 init 方法。这会将字段上的 min 属性设置为 10:

    def __init__(self, *args, **kwargs):
        super(ProductForm, self).__init__(*args, **kwargs)
        self.fields['price'].widget.attrs['min'] = 10

关于python - Django Modelform 在 FloatField 上设置最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41701222/

相关文章:

python - Django 中的嵌入式身份验证 + LDAP 用户验证。如何?

ios - 前导空格适合 iOS7 和 iOS8

python - 在 QtWebView 中以正确的尺寸显示 SVG 图像

django - 在管理 View 之外使用 django-autocomplete-light

python - Django、Virtualenv、nginx + uwsgi导入模块wsgi报错

SQLite:确保一个条目小于另一个作为约束

mysql - 在MYSQL中添加不带 "create assertion"的检查约束

java - 新闻的代码拆分/格式 - 需要权威提及

python - 如何在 MultiIndex DataFrame 上实现非重叠滚动功能

python - 如何在 python 数据框中做季度?