- 环境:macos 10.12 python3.5 pycharm Django 1.10版 pip3
一、Django简介
百度百科:一个开放源代码的Web框架,由Python语言编写......
重点:一个大而全的框架,啥都替你考虑好了。
1. web框架介绍
具体介绍Django之前,必须先介绍WEB框架的概念。
web框架: 别人已经设定好的一个web网站模板,你学习它的规则,然后“填空”或“修改”成你自己需要的样子。
一般web框架的架构是这样的:
其它基于Python的web框架,如tornado、flask、webpy都是在这个范围内进行增删裁剪的。例如Tornado用的是自己的异步非阻塞“wsgi”,flask则只提供了最精简和基本的框架。Django直接使用WSGI,并实现了大部分Web应用相关的功能。
2. MVC/MTV介绍
MVC百度百科:全名Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件工程典范,用业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。
通俗解释:一种代码和文件的组织和管理形式!不要被缩写吓到了,这其实就是把不同类型的文件放到不同的目录下的一种方法,然后取了个高大上的名字。当然,它带来的好处有很多,比如前后端分离,松耦合等等,在使用中你慢慢体会就会逐渐明白它,具体就不详细说明了。
其中:
模型(model):定义数据库相关的内容,一般放在models.py文件中。
视图(view):定义HTML等静态网页文件相关,也就是那些HTML、css、js等前端的东西。
控制器(controller):定义业务逻辑相关,就是你的主要代码。
MTV: Django觉得MVC的字面意思很别扭,不太符合它的理念,就给它改了一下。view不再是HTML相关,而是主业务逻辑V了,相当于控制器。HTML被放在Templates中,称作模板T,于是MVC就变成了MTV。这其实就是一个文字游戏,和MVC本质上是一样的,换了个名字和叫法而已,换汤不换药。
3.Django的MTV模型组织
目录分开,就必须有机制将他们在内里进行耦合。在Django中,典型的业务流程如下图所示:
二、开发环境配置
- python3.5、virtualenv、、pip3及pycharm请自行安装
- 创建开发虚拟环境, 必免环境污染
virtualenv -p /usr/local/bin/python3.5 dpy3.5env
- 激活
source bin/activate
- 创建一个list_req.txt文件, 把下面要装的包粘贴进去, 并安装.
创建并打开list_req.txt文件
vim list_req.txt
复制下面的包名到list_req.txt
Django==1.11
olefile==0.44
Pillow==4.2.1
PyMySQL==0.7.11
pytz==2017.2
安装
pip3 install -r list_req.txt
- pip3 freeze查看已安装的包
$ pip3 freeze
Django==1.11
olefile==0.44
Pillow==4.2.1
PyMySQL==0.7.11
pytz==2017.2
redis==2.10.6