Django form表单使用
2014-09-09 13:36
465 查看
在前端提交数据的时候,常常需要提交表单数据。
而在Django中可以使用表单类进行简化操作,方便后台对于表单的处理。
显示表单除了可以{{form.as_p}},{{form.as_table}},等,也可以使用CSS设计。
每一个字段部件都可以通过访问{{form.字段名}}进行单独渲染,这个地方需要注意,因为前端渲染必须需要采用这些方法。
而在Django中可以使用表单类进行简化操作,方便后台对于表单的处理。
例如下面表单类的一个例子:
from django import forms class ContactForms: subjects = forms.CharField(max_length = 100) email = forms.EmailField(required = False) message = forms.charField(widget = forms.Textarea) #Django 的 forms系统会自动匹配以clean_开头,以字段名为结束的方法 #当在校验时会被调用 def clean_message(self): message = self.cleaned_data['message'] num_words = len(message.split()) if num_words < 4: raise forms.ValidationError("Not enough words!") return message #当在view视图中使用时,直接生成即可def contact(request): if request.method == 'POST': form = ContactForms(request.POST) if form.is_valid(): return HttpResponseRedirect('thank.html')
定制Form设计
显示表单除了可以{{form.as_p}},{{form.as_table}},等,也可以使用CSS设计。每一个字段部件都可以通过访问{{form.字段名}}进行单独渲染,这个地方需要注意,因为前端渲染必须需要采用这些方法。
<html> <head> <title>Contact Us</title> </head> <!--基本的css样式都可以在这里加--> <form acton = "" method = "post"> <div class = "field"> <label for = "id_subject" >Subject:</label> {{form.subject}} </div> <div class = "field"> <label for = "id_email" >Email:</label> {{form.email}} </div> <div class = "field"> <label for = "id_message" >Message:</label> {{form.message}} </div> </form> </html>
相关文章推荐
- Django中 form表单的使用
- 使用Django Form解决表单数据无法动态刷新的两种方法
- Django中 form表单的使用
- django(7)modelform操作及验证、ajax操作普通表单数据提交、文件上传、富文本框基本使用
- django form表单组建使用及CBV模式
- Django:我是怎么做到使用django动态定义表单(form)的 .
- Django中 form表单的使用
- Django中 form表单的使用
- 四【用django2.0来开发】后台会员管理(二) ModelForm表单的使用方法以及数据验证
- 使用Django的ModelForm对表单进行自动验证(可自定义验证规则)
- django form表单组建使用及CBV模式
- Python中使用django form表单验证的方法
- django表单使用forms.ModelForm
- Django:我是怎么做到使用django动态定义表单(form)的
- Drupal6中使用一份form表单完成提交创建与编辑更改的功能
- IE下使用form表单提交到iframe中出现的重复提交问题
- 在Drupal的form表单中使用js事件,比如onClick和onChange等,或者加载一些css样式等自己需要的杂七杂八的东西
- 使用母版页面后获取Form表单提交值
- form 的 encoding设置不当导致在jsp中使用request.getParametre(paraName)无法获取表单提交的值
- [网摘]使用fieldset、label标签制作form表单