后端

后端

HttpReqeust对象

服务器接受到http 协议的请求后,会根据报文创建HttpReqeust对象

试图函数的地一个参数是HttpReqeust对象

在django.http模块中定义了HttpReqeust对象的APL属性

path 一个字符串,表示请求页面的完整路径,不包含域名

method 一个字符串,表示请求使用的HTTP方法,常用的值包括:GET POST

encding 一个字符串,表示提交的数据编码方式

如果为None则表示使用浏览器的默认设置,一般为utf-8

这个属性是可写的,可以通过修改它来修改访问表单数据使用的编码,接下来对属性的任何访问将使用新的encoding值

GET 一个类似于字典的对象,包含get请求方式的所有参数

POST 一个类似于字典的对象,包含post请求的所有参数

FLES 一个类似于字典的对象,包含所有上传文件

COOKES 一个标准的python字典,包含所有cookie,键和值都为字符串

SESSION 一个既可读又可写的类似于字典的对象,表示当前的会话,只有当Django 启用会话的支持时才可用,详细内容见“状态保持“

方法

is_ajax():如果请求是通过XMLHttpRequest发起的,则返回True

QueryDict对象

定义在django.http.QueryDict

request对象的属性GET、POST都是QueryDict类型的对象

与python字典不同,QueryDict类型的对象用来处理同一个键带有多个值的情况

方法get():根据键获取值

只能获取键的一个值

如果一个键同时拥有多个值,获取最后一个值

* dict.get('键',default)或简写为dict['键'] *

方法getlist():根据键获取值

将键的值以列表返回,可以获取一个键的多个值

* dict.getlist('键',default)

GET属性

* QueryDict类型的对象

包含get请求方式的所有参数

与url请求地址中的参数对应,位于?后面

参数的格式是键值对,如key1=value1 *

多个参数之间,使用&连接,如key1=value1&key2=value2

键是开发人员定下来的,值是可变的

示例如下

创建视图getTest1用于定义链接,getTest2用于接收一键一值,getTest3用于接收一键多值

*

*def getTest1(request):

return render(request,'booktest/getTest1.html')

def getTest2(request):

return render(request,'booktest/getTest2.html')

def getTest3(request):

return render(request,'booktest/getTest3.html')

配置url

* url(r'^getTest1/$', views.getTest1),

url(r'^getTest2/$', views.getTest2),

url(r'^getTest3/$', views.getTest3),

显示接受结果

*

Title

>a:{% for item in a %}{{ item }}

{% endfor %}

b:{{ b }}

你可能感兴趣的:(后端)