Django是一个开放源代码的web应用框架,它是一个基于M(Model)V(View)C(Controller)构造的框架,但是Django更关注的是M(Model)V(View)T(Templates),即模型,视图,模板。模型(Model)就是用来与数据库打交道,处理与数据相关的所有事务,模型中定义的一个类,相当于数据库中的一张数据表,类中定义的不同的属性,对应的是这张数据表中相应的字段。视图(View)是用来处理业务逻辑的,展示那些数据,怎么展示这些数据,都由视图函数来控制。模板(Templates)就是用来展示数据的HTML页面,是展示给用户看的页面。
Django从创建一个项目开始,创建项目之后会在项目根目录下生成一个与项目同名的文件夹,文件夹中setting.py文件是用来配置整个项目的,setting.py主要的功能有,配置允许那些主机访问我的项目;注册生成的app;配置需要使用的模板路径;配置数据库;使用中文或者英文;添加中间件;配置静态资源的虚拟路径(相当于给静态资源路径取了个别名),配置静态资源文件的路径,如果使用Django内置的用户登录模块,还可以设置登录重定向的路由。
Django中间件有内置和自定义的,比如是否启用session与CSRF验证(都是默认开启),session主要用来保持状态;状态保持的目的就是在一段时间内跟踪请求者的状态,实现跨页面访问当前请求者的数据;因为http是协议是无状态的,每次请求都是一个新的请求,客户端与服务器端的一次通信就是一次会话,有时候用户登录网站,跳转到其他的页面,而这些页面需要用到用户的信息,