jango-视图

 

视图就是views.py中的函数

 

作用:接收HTTP请求,逻辑处理,返回HTTP响应给客户端(响应可以包括HTML,404,重定向,json数据.....)

 

视图的第一个参数必须是HttpRequest的对象,还可包含位置参数和关键字参数

 

必须返回一个HttpResponse对象给客户端,也可以返回一个子对象:JsonResponse,HttpResponRedirect(重定向)

 

从请求地址中取值:

第一个:位置参数,接收参数的时候要按正则中组的顺序

 

第二个:(?P<变量> 值)关键字参数 在视图中接收参数的时候位置不受影响,但是名字要和正则中的关键字名称一样

 

 

请求的URL被看成是一个普通的pyhon字符串,进行匹配的时候不包括域名,端口,get,post等参数。django会自动把这些东西截取,拿着剩下的才进行正则匹配

 

 

404 

DEBUG = True 调试阶段

ALLOWED_HOSTS = []

 

一旦是线上模式需要将DEBUG改为False,

 ALLOWED_HOSTS=[‘ * ’] .django不再提供静态文件的处理,Django擅长处理动态逻辑,静态文件交给nginx服务器处理

 

 

HttpRequest的对象,这个对象的属性都是只读的

在服务器接收到请求报文之后,会将根据报文创建一个HttpRequest对象,这个API由Django创建好的 

django.http模块中定义了HttpRequest

 

  视图的第一个参数必须是HttpRequest对象

 

HttpRequest对象的属性:

path:完整的请求路径,不包括域名

 

method获取请求方法:GET,POST

在浏览器中给出地址采用的是GET请求,如超链接

 

提交表单的时候发送的是POST请求

 

GET,POST属性都是类似于字典的QueryDict类型的对象。

        

与python不同的是 Query_Dict类型的对象,可以存储一键多值,键和值都是字符串类型的

 

GET属性获取的是请求路经中?后面的值,一键多值,和一键一值,一键一直用get方法来获取,一键多值get_list

 

POST属性获取的是表单中的数据,

通常表单中的input标签必须有name属性,在提交表单的时候,会拿着每个标签的name属性的值作为key,value的值作为value 构成一个键值对进行提交,如果表单控件没有name属性则不进行提交

 

 

HttpResponse对象

视图在就收请求并处理后,必须返回一个HttpResponse对象或子对象(JsonResponse,HttpResponse)

 

django.http这个模块中定义HttpResponse对象的API

 

常见的属性

count:表示返回的内容

charset;表示response采用的编码字符集,默认UTF-8

status_code:返回的HTTP响应的状态码

content-type:指定返回数据的MIME类型,默认为’’text/html’

 

常用的方法:write:向响应体中写入数据

 

 

JsonResponse 

继承于HttpResponse

 

被定义在django.http模块中

 

接收字典搜索作为参数

 

响应的内容格式:

content-tyoe:默认为application/json

转载于:https://www.cnblogs.com/machaos/p/8402148.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值