Django网站搭建——form表单提交问题

在Django中我们可以通过封装model来获得form,也可以单独定义一个form,然后在view中对提交过来的数据进行处理。

一般来说通过model封装来的form是这样进行定义的:

class Form(forms.ModelForm):

         class meta:

                 model = modelname

                field = ['attrr1','attrr2']

单独定义的form则继承forms.Form

class Form(forms.Form):

           name1 = forms.CharField(label=u' 验证码', 
        widget=forms.TextInput(attrs={'class':'form-control', 'id':'check_code','placeholder':u'输入验证码'}))

这种定义可以方便在网页进行标签化显示内容,在此基础上还可以通过定义clean函数,来进行简单的数据验证。

在view函数中获得form表单提交的数据也很简单:

当验证表单form.is_valid为真时,通过form.cleaned_data['name1']来获得数据。注意这里的字典内引用值为name1也就是定义的表单中的属性名称,这是因为在定义表单变量时

并没有指定其显示时候的name属性,当提交时,系统会自动为其添加name属性,而name属性的值就是定义的变量名:可以观察提交的form表:


    观察到增加了name属性。

我验证了在属性定义时指定name值,但是发现name值还是会被改为属性变量值。


你可能感兴趣的:(Django,网站搭建,python,django,python,表单)