django 中间件 和 模型

4 篇文章 0 订阅

python :
星矿项目复盘 -各个知识点
一个项目的成功开发主要有测试环境配置文件和正式配置文件
django settings 配置文件 的作用,中间件
django 中间件是修改 django requests 和django response 对象的钩子 可以理解为 介于 Httprequest 与Httpresponse 之间的一道处理过程
浏览器请求到响应的过程中 django 会有许多中间件来处理 如 session 中间件 token 中间件 csrftokrn
中间件的作用 修改请求 ----传送到view 中的httprequest 对象 修改响应 -----传送到view httpresponse 对象
默认中间配置在 setting 中
自定义中间件的4个方法
process_request(self,request)
process_view(self, request, view_func, view_args, view_kwargs)
process_exception(self, request, exception)
process_response(self, request, response)

在这里插入图片描述

每个自定义中间件 方法
process_request 方法
request 参数中的request 与视图中的requests 是一样的,返回值可以是None 也可以是Httpresponse
返回值是None 的话 按照正常流程继续走,交给下一个中间件处理
返回值是HttpResponse 对象 Django 将不在执行后续视图之前执行的方法以及视图函数,直接以中间件为起点,且执行的是视图函数之后执行的方法

在这里插入图片描述
在这里插入图片描述

process_response 基于请求响应,在视图之后
process_view
process_view(request,view_func,view_args,view_kwargs)

process_exception(request,exception)
request 是HttpRequest 对象
exception是视图函数异常产生的exception 对象
在这里插入图片描述

def process_exception(self, request, exception):#引发错误 才会触发这个方法
print(“md1 process_exception 方法!”)
# return HttpResponse(exception) #返回错误信息
django 的中间件 都有哪些作用
中间件是一个可以嵌入到django requests /response 处理机制一个框架
修改django 全局输入输出的底层插件系统
HTTP Web服务器工作原理一般都是接收用户发来的请求(request), 然后给出响应(response)。Django也不例外,其一般工作方式是接收request对象和其它参数,交由视图(view)处理,然后给出它的响应(respone)数据: 渲染过的html文件或json格式的数据。然而在实际工作中Django并不是接收到request对象后,马上交给视图函数或类(view)处理,也不是在view执行后立马给用户返回reponse。事实上Django最初接收的是HttpRequest对象,而不是request对象,正是中间件的作用把HttpRequest对象和user对象打包成了一个全局变量request对象,这样你才可以View中使用request作为变量或者在模板中随意调用request.user
django models 介绍

django 模型使用自带的orm 对象关系映射,用于实现面向对象编程语言里不同类型系统的数据之间的转换
orm 在数据逻辑层和数据库之前起了桥梁作用

配置:
设置连接数据地址
在这里插入图片描述

定义模型 创建 models.py
在这里插入图片描述

开始设置models
类名 代表数据库的库名,切继承了models.Model 类里面的字段代表数据表中的字段 name 数据类型 由 CharField (相当于varchar)
DateField 相当于datetime max_length 参数限定长度
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瓶瓶罐罐的

如果帮助到你了,请来点实际的

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值