Django Form常用功能及代码示例
Django的Form主要具有一下几大功能:
- 生成HTML标签
- 验证用户数据(显示错误信息)
- HTMLForm提交保留上次提交数据
- 初始化页面显示内容
views.py
fromdjango.shortcutsimportrender #Createyourviewshere. fromdjango.formsimportForm fromdjango.formsimportwidgets fromdjango.formsimportfields #对form表单进行数据验证 classLoginForm(Form): user=fields.CharField(required=True)#不能为空 pwd=fields.CharField(min_length=18) deflogin(request): ifrequest.method=="get": returnrender(request,'login.html') else: obj=LoginForm(request.POST)#request.POST拿到的是POST的数据 """ is_valid 1.获取当前类中所有的字段 -LoginForm实例化时候,放入 self.fields={ 'user':正则表达式, 'pwd':正则表达式 } 2.循环self.fields flag=True fork,vinself.fields.items(): k是:user,pwd v是:正则表达式 input_value=requests.POST.get(k) flag=False returnflag """ ifobj.is_valid(): print(obj.cleaned_data)#字典数据 else: #print(obj.errors)#返回的是个err对象 print(obj.errors)#返回的是个err对象 returnrender(request,'login.html')
login.html
Title 用户登录
{%csrf_token%} 用户名 密码