主要介绍django的工作原理,其中涉及到Middleware(中间件,包括request, view, exception, response),URLConf(url映射关系),Template(模板系统)。

工作流程

下面是一些流程说明:

1.用户通过浏览器请求页面。
2.请求到达Request Middlewares中间件,中间件对request做一些预处理或者直接response请求。
3.URLConf通过urls.py文件和请求的URL找到相应的View。
4.View Middlewares被访问,它同样可以对request做一些处理或者直接返回response。
5.调用View中的函数。
6.View中的方法可以选择性的通过Models访问底层的数据。
7.所有的Model-to-DB的交互都是通过manager完成的。
8.如果需要,Views可以使用一个特殊的Context。
9.Context被传给Template用来生成页面。
10.Template使用Filters和Tags去渲染输出。
11.输出被返回到View。
12.HTTPResponse被发送到Response Middlewares。
13.任何Response Middlewares都可以丰富response或者返回一个完全不同的response。
14.Response返回到浏览器,呈现给用户。