【发布时间】:2020-09-13 03:06:12
【问题描述】:
我总是使用以下代码来验证表单以防止提交空白表单。它总是在 Django 1.8 中工作,但由于某种原因在 Django 2.2 中不工作。
这是表格
class CreateForm(forms.ModelForm):
class Meta:
model = Device
fields = ['category', 'item_name', 'quantity']
def clean_category(self):
category = self.cleaned_data.get('category')
if category == '':
raise forms.ValidationError('This field is required')
return category
def clean_item_name(self):
item_name = self.cleaned_data.get('item_name')
if item_name == '':
raise forms.ValidationError('This field is required')
return item_name
这是模型
class Device(models.Model):
category = models.CharField(max_length=50, blank=True, null=True)
item_name = models.CharField(max_length=50, blank=True, null=True)
quantity = models.IntegerField(default='0', blank=False, null=True)
谢谢
【问题讨论】:
-
可以分享一下相关型号吗?
-
为什么不在您正在使用的字段中指定
min_length? -
你有没有在你的模型字段中设置
blank=True? -
我编辑了问题并添加了模型。我不想使用模型验证。
标签: django django-forms