ModelForm 和 普通的Form 都可以做表单验证
对于ModelForm如果只是想验证其中一部分model中的field,可以指定:内部类Meta的fields元素:
fields = ('xx','yy')
注意fields一定是要是元组
这样验证的时候就只会验证指定的部分
用is_valid()就可以验证
两者都可以在实例化的时候初始化数据,比如:
class MyForm(Form):
some_field = forms.CharField()
my_form = MyForm(request.POST) #传入字典变量即可
对于ModelForm还可以指定instance参数,以一个model实例作为基准数据,在此基准数据的基础上根据data参数的数据字典进行 “changed”,比如:
class MyForm(ModelForm):
class Meta:
model = MyModel
my_form = MyForm(data=request.POST,instance=my_model)