Request
我们知道当URLconf文件匹配到用户输入的路径后,会调用对应的view函数,并将 HttpRequest对象 作为第一个参数传入该函数。
Django 每一个view函数的第一个参数都是request,有没想过request里面到底有什么呢?
Django使用request和response对象在系统间传递状态。
当一个页面被请示时,Django创建一个包含请求元数据的 HttpRequest 对象。 然后Django调入合适的视图,把HttpRequest 作为视图函数的第一个参数 传入。每个视图要负责返回一个 HttpResponse 对象。
HttpRequest实例的属性包含了关于此次请求的大多数重要信息。 除了session外的所有属性都应该认为是只读的.
我们来看一看这个HttpRequest对象有哪些属性或者方法:
属性:
1 HttpRequest.scheme
2 HttpRequest.body
3 HttpRequest.path
4 HttpRequest.path_info
if the WSGIScriptAlias for your application is set to "/minfo", then path might be "/minfo/music/bands/the_beatles/" and path_info would be "/music/bands/the_beatles/".
5 HttpRequest.method
6 HttpRequest.encoding
7 HttpRequest.content_type
8 HttpRequest.content_params
9 HttpRequest.GET
10 HttpRequest.POST
11 HttpRequest.COOKIES
12 HttpRequest.FILES
13 HttpRequest.META
14 HttpRequest.session
15 HttpRequest.site
16 HttpRequest.user
方法:
1 HttpRequest.get_host()
2 HttpRequest.get_port()
3 HttpRequest.get_full_path()
4 HttpRequest.bulid_absolute_uri(location)
QueryDict
1 QueryDict.get(key,default=None) 返回key所对应的value,若key不存在,则返回default的值
2 QueryDict.update(other_dict) 更新
3 QueryDict.values() 列出所有的值
4 QueryDict.items() 列出所有的键值对,若一个key有多个值,只显示最后一个值。
5 QueryDict.pop(key) 删除某个键值对
6 QueryDict.getlist(key) 根据输入的key返回一个Python中的list
7 QueryDict.dict() 返回QueryDict的字典的表现形式