• Django框架架构总览

    理解Django是如何运作的
    服务器君一共花费 10.161 ms 进行了 4 次数据库查询,努力地为您提供了这个页面。
    广告很萌的

    Django架构总览

    如下图所示django的架构总览图,整体上把握以下django的组成:

    核心在于middleware(中间件),django所有的请求、返回都由中间件来完成。

    中间件,就是处理HTTP的request和response的,类似插件,比如有Request中间件、view中间件、response中间件、exception中间件等,Middleware都需要在 “project/settings.py” 中 MIDDLEWARE_CLASSES 的定义。大致的程序流程图如下所示:

    首先,Middleware都需要在 “project/settings.py” 中 MIDDLEWARE_CLASSES 的定义, 一个HTTP请求,将被这里指定的中间件从头到尾处理一遍,暂且称这些需要挨个处理的中间件为处理链,如果链中某个处理器处理后没有返回response,就把请求传递给下一个处理器;如果链中某个处理器返回了response,直接跳出处理链由response中间件处理后返回给客户端,可以称之为短路处理。

    • 一般我们在编写 view 层函数的时候,都以 return response 或者 return HttpResponse(x) 结尾。现在你知道为什么要 return 了吧?
更多 推荐条目

Welcome to NowaMagic Academy!

现代魔法 推荐于 2013-02-27 10:23   

本章最新发布
随机专题
  1. [移动开发] Android SQLite增删查改实例(数据:魔弹之王) 2 个条目
  2. [PHP程序设计] CodeIgniter与PHP框架设计 5 个条目
  3. [Python程序设计] 从PHP到Python 3 个条目
  4. [软件工程与项目管理] 浏览器与CSS渲染技巧 2 个条目
  5. [Python程序设计] Django数据库模型 6 个条目
  6. [数据库技术] MySQL常用自带函数 3 个条目
  7. [移动开发] Android 开发调试工具 ADB 3 个条目
  8. [数据库技术] MySQL中英文混合排序 4 个条目
  9. [移动开发] Android属性系统Property 9 个条目
  10. [PHP程序设计] PHP里的引用 5 个条目
  11. [Python程序设计] Django 入门知识浅介 10 个条目
  12. [Python程序设计] urls.py设置技巧 8 个条目
窗口 -- [协会]