python django
django ModelForm中表单字段非必填项的方法
如一个form中,想要image1这个字段是一个非必填项。相关代码如下
class ArticleForm(forms.ModelForm):
class Meta:
model = productmessages
fields = "_ _ all_ _"
error_messages = {
'myfile': {
'invalid_image': '请上传正确格式的图片!'
}
第一种解决办法
class ArticleForm(forms.ModelForm):
pm_img1 = forms.ImageField(required=False)
class Meta:
model = productmessages
fields = "__all__"
error_messages = {
'myfile': {
'invalid_image': '请上传正确格式的图片!'
}
}
第二种办法:
class ArticleForm(forms.ModelForm):
class Meta:
model = productmessages
fields = "__all__"
error_messages = {
'myfile': {
'invalid_image': '请上传正确格式的图片!'
}
}
def __init__(self, *args, **kwargs):
super(ArticleForm, self).__init__(*args, **kwargs)
self.fields['pm_img1'].required = False
我查资料说是这两种方法都可以,但是我用起来第二种好使,望指导!