# 第三节:Django介绍
# Django介绍:
Django,发音为\[`dʒæŋɡəʊ\],Django诞生于2003年秋天,2005年发布正式版本,由Simon和Andrian开发。当时两位作者的老板和记者要他们几天甚至几个小时之内增加新的功能。两人不得已开发了Django这套框架以实现快速开发目的,因此Django生来就是为了节省开发者时间的。Django发展至今,被许许多多国内外的开发者使用,已经成为web开发者的首选框架。因此,如果你是用python来做网站,没有理由不学好Django。
选读:
1. [Python+Django如何支撑了7 亿月活用户的Instagram?](http://python.jobbole.com/87814/ "Python+Django如何支撑了7 亿月活用户的Instagram?")
2. [Django商业网站](http://simple-is-better.com/sites/bussiness "Django商业网站")
### Django版本和Python版本:
![](https://img.kancloud.cn/f6/71/f67165d6029c046cd4cdd4fab95bbcb7_443x157.png)
### web服务器和应用服务器以及web应用框架:
- **web服务器**:负责处理http请求,响应静态文件,常见的有`Apache`,`Nginx`以及微软的`IIS`.
- **应用服务器**:负责处理逻辑的服务器。比如`php`、`python`的代码,是不能直接通过`nginx`这种**web服务器**来处理的,只能通过**应用服务器**来处理,常见的应用服务器有`uwsgi`、`tomcat`等。
- **web应用框架**:一般使用某种语言,封装了常用的`web`功能的框架就是**web应用框架**,`flask`、`Django`以及Java中的`SSH(Structs2+Spring3+Hibernate3)`框架都是web应用框架。
### Django和MVC:
Django是一个遵循`MVC`设计模式的框架,`MVC`是`Model`、`View`、`Controller`的三个单词的简写。分别代表`模型`、`视图`、`控制器`。以下图片说明这三者之间的关系:
![](https://img.kancloud.cn/8c/8e/8c8e46d3997cf0526d9849cc3d69bd41_886x426.png)
而`Django`其实也是一个`MTV`的设计模式。`MTV`是`Model`、`Template`、`View`三个单词的简写。分别代表`模型`、`模版`、`视图`。以下图片说明这三者之间的关系:
![](https://img.kancloud.cn/10/f9/10f986864a04481542c4609565d85f6c_874x437.png)
### 更多:
1. `Django`的官网:<https://www.djangoproject.com/>
2. `Django Book`2.0版本的中文文档:<http://djangobook.py3k.cn/2.0/chapter01/>
3. `Django`2.0版本的中文文档:<http://python.usyiyi.cn/translate/django2/index.html>
- Introduction
- 第一章:学前准备
- 第一节:虚拟环境
- 第二节:准备工作
- 第三节:Django介绍
- 第四节:URL组成部分
- 第二章:URL与视图
- 第一节:第一个Django项目
- 第二节:视图与URL分发器
- 第三章:模板
- 第一节:模板介绍
- 第二节:模板变量
- 第三节:常用标签
- 第四节:常用过滤器
- 第五节:自定义过滤器
- 第七节:模版结构优化
- 第八节:加载静态文件
- 第四章:数据库
- 第一节:MySQL相关软件
- 第二节:数据库操作
- 第三节:ORM模型
- 第四节:模型常用字段
- 第五节:外键和表关系
- 第六节:增删改查操作
- 第七节:查询操作
- 第八节:QuerySet API
- 第九节:ORM模型迁移
- 第十节:ORM作业
- 第十一节:ORM作业参考答案
- 第十二节:Pycharm连接数据库
- 第五章:视图高级
- 第一节:限制请求method
- 第二节:页面重定向
- 第三节:HttpRequest对象
- 第四节:HttpResponse对象
- 第五节:生成CSV文件
- 第六节:类视图
- 第七节:错误处理
- 第六章:表单
- 第一节:表单概述
- 第二节:用表单验证数据
- 第三节:ModelForm
- 第四节:文件上传
- 第七章:cookie和session
- 第八章:上下文处理器和中间件
- 第一节:上下文处理器
- 第二节:中间件
- 第九章:安全
- 第一节:CSRF攻击
- 第二节:XSS攻击
- 第三节:点击劫持攻击
- 第四节:SQL注入
- 第十章:信号
- 第一节:什么是信号
- 第十一章:验证和授权
- 第一节:概述
- 第二节:用户对象
- 第三节:权限和分组
- 第十二章:Admin系统
- 第十三章:Django的缓存
- 第十四章:memcached
- 第十五章:Redis