forms组件的渲染错误信息,全局和局部钩子函数,cookie,session
Posted xiaocaiyang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了forms组件的渲染错误信息,全局和局部钩子函数,cookie,session相关的知识,希望对你有一定的参考价值。
一.forms组件的渲染错误信息
在模板中:<span>{{ foo.errors.0 }}</span>
forms使用bootstrap样式
widget = widgets.EmailInput(attrs={‘class‘:‘form-control‘})
全局和局部钩子函数
AOP:面向切面编程
局部钩子函数(再校验name)
def clean_name(self):
# 从cleaned_data中取出字段的值
name = self.cleaned_data.get(‘name‘)
#校验是否以sb开头
if name.startswith(‘sb‘):
raise ValidationError(‘不能以sb开头‘)
else:
return name
全局钩子函数
def clean(self):
pwd = self.cleaned_data.get(‘pwd‘)
re_pwd = re_pwd:
# 正确,返回self.cleaned_data
else:
# 校验失败,抛异常
raise ValidationError(‘两次密码不一致‘)
二.cookie
cookie是存在浏览器上键值对{‘name‘:‘lqz‘,‘password‘:123}
服务器写到浏览器上的
三.session:
因为cookie不安全,所以出了session
存在于服务器上的键值对‘sfdasdfa‘:{‘name‘:‘lqz‘,‘password‘:123}
四.cookie的使用:
设置cookie:
HttpResponse的对象 obj.set_cookie(key,value,超时时间)
取cookie:
request.COOKIES.get(key)
name = request.get_signed_cookie(‘name‘,salt=‘123‘)
删除:
HttpResponse对象 obj.delete_cookie(‘is_login‘)
五.session的使用
设置:
request.session[‘name‘] = ‘lqz‘
request.session[‘age‘] = ‘18‘
取cookie:
request.session.get(‘name‘)
删除:
request.session.delete() 只删除数据库
request.session.flush() 浏览器cookie和数据库
以上是关于forms组件的渲染错误信息,全局和局部钩子函数,cookie,session的主要内容,如果未能解决你的问题,请参考以下文章
Django框架(十六)—— forms组件局部钩子全局钩子
Django---FORM组件.FORM组件的字段,FORM组件校验流程,FORM组件的全局和局部钩子,FORM和Model的组合