django表单

来源:互联网 发布:hive sql与sql对比 编辑:程序博客网 时间:2024/05/20 06:29

Django 的Form类¶
表单系统的核心部分是Django 的Form 类。Django 的模型描述一个对象的逻辑结构、行为以及展现给我们的方式,与此类似,Form 类描述一个表单并决定它如何工作和展现。
就像模型类的属性映射到数据库的字段一样,表单类的字段会映射到HTML 的表单的元素。(ModelForm 通过一个Form 映射模型类的字段到HTML 表单的 元素;Django 的Admin 站点就是基于这个)。
表单的字段本身也是类;它们管理表单的数据并在表单提交时进行验证。DateField 和FileField 处理的数据类型差别很大,必须完成不同的事情。
表单字段在浏览器中呈现给用户的是一个HTML 的“widget” —— 用户界面的一个片段。每个字段类型都有一个合适的默认Widget 类,需要时可以覆盖。

forms.py

class LoginForm(forms.Form):    username = forms.CharField(required=True)    password = forms.CharField(required=True, min_length=5)class RegisterForm(forms.Form):    email = forms.EmailField(required=True)    password = forms.CharField(required=True, min_length=5)    captcha = CaptchaField()

views.py

class RegisterView(View):    def get(self, request):        register_form = RegisterForm() #实例化表单        return render(request, 'register.html', {'register_form': register_form}) #将表单传入到html中

register.html

<input  type="text" id="id_email" name="email" value="None" placeholder="请输入您的邮箱地址" /># register_form 的email字段将会找到html中的name = ‘email’属性,把表单的限制required=True添加到这个输入字段中

这里写图片描述

原创粉丝点击