Form组件的验证流程及扩展(钩子)常用的form
1234567891011121314151617181920212223class TestForm(Form): t1 = fields.CharField( widget=widgets.Textarea # 输入框 ) t2 = fields.CharField( widget=widgets.CheckboxInput # 单选框 ) t3 = fields.MultipleChoiceField( choices=[(1, '篮球'), (2, '足球')], # 多选框的内容 widget=widgets.CheckboxSele...
Ajax的原理及Django上传组件
Ajax的原理及Django上传组件Ajax的原理
ajax 是异步JavaScript和xml
ajax就是向后台提交数据但是不刷新页面
原生Ajax XMLHttprequest
创建一个XMLHttprequest对象
回调函数onreadystatechange 对应jQuery中的success
状态值是不断变化的,4代表完成,已经接收到全部响应数据;
open是创建请求
send是发送数据
XMLHttprequest对象的主要方法:123456789101112131415161718192021222324252627282930313233343536373839a. void open(String method,String url,Boolen async) ...
CORS的原理及应用
CORS的原理及应用
CORS是跨站资源共享,同样是解决浏览器的同源策略
其本质是设置响应头,使得浏览器允许跨域请求。
第三方网站返回数据的时候在浏览器的响应头中添加允许的域名,允许所有的用*
1 简单请求
简单请求是只发一次请求
ajax请求不变,第三方后台修改
s4的后台,在返回值中添加允许的域名和端口,注意不同后面写具体的域名,自己出错是在后面加上了cors
允许所有的,用*
123456789101112def new_users(request): print('请求is coming') user_list = [ 'aaa', 'bbb', 'ccc' ] user_list_str = json.d...
JSONP的原理及应用
JSONP 的原理及应用浏览器的同源策略:ajax跨域发送请求,浏览器不接受数据
但是带有src属性的可以跨域,如script,JSONP就是利用的这种方式
同源策略参考:
https://www.zhihu.com/question/25427931/answer/30848852https://www.zhihu.com/question/31459669https://developer.mozilla.org/zh-CN/docs/Web/Security/Same-origin_policy
JSONP 技术
jsonp是一种技术,一种绕过跨域的技巧
禁止ajax跨域下面是使用ajax进行的向百度发送请求,这种情况就是跨域请求,浏览器会禁止接收数据
1234567891011...
Django Form组件
From的功能实际有三个,Form验证,From添加标签,Form保留返回值
保留返回值的功能还可用ajax发送
一、Form验证
对用户的请求的数据进行验证
使用类
从前端获取的数据的name属性的名字要和定义的class类中的字段一致
12
二、From添加标签1 自己在前端写标签自己在前端写input标签,在提交后在后台获取name属性的值进行验证,user要和LoginForm 中的字段名一致,之后obj.is_valid()会自动验证,验证通过(通过后正确信息是obj.cleaned_data,),返回True,不通过返回false(错误信息obj.errors),通常在前端获取,如obj.errors.user.0
这里的问题是提交后不能保存信息
1234567891011...