软件及 Django 框架简介
软件框架
一个软件框架是由其中各个软件模块组成的;
每一个模块都有特定的功能;
模块与模块之间通过相互配合来完成软件的开发.
软件框架是针对某一类软件设计问题而产生的.
MVC 框架
施乐公司 帕罗奥多研究中心 smalltalk 语言 simula 67
软件设计模式:
MVC 的产生理念: 分工. 让专门的人去做专门的事 -- 输入, 处理, 输出
MVC 的核心思想: 解耦.
通过浏览器注册用户信息理解 MVC 框架.
M: Model, 模型, 和数据库进行交互;
V: View, 视图, 产生 html 页面;
C: Controller, 控制器, 接收请求, 进行处理, 与 M 和 V 进行交互, 返回应答.
MVT 简介
Django 劳伦斯出版集团 新闻内容网站. Python--->MVC
快速开发和 DRY 原则. Do not repeat yourself. 不要自己去重复一些工作.
通过浏览器注册用户信息理解 MVT 框架.
M:Model, 模型, 和 MVC 中 M 功能相似, 和数据库进行交互;
V: View, 视图, 和 MVC 中 C 功能相似, 接收请求, 进行处理, 与 M 和 T 进行交互, 返回应答;
T: Template, 模板, 和 MVC 中 V 功能相同, 产生 HTML 页面.
Django 简介
Django, 发音为 [`d?æ?ɡ??], 是用 python 语言写的开源 web 开发框架, 并遵循 MVC 设计.
劳伦斯出版集团为了开发以新闻内容为主的网站, 而开发出来了这个框架, 于 2005 年 7 月在 BSD 许可证下发布. 这个名称来源于比利时的爵士音乐家 DjangoReinhardt, 他是一个吉普赛人, 主要以演奏吉它为主, 还演奏过小提琴等.
由于 Django 在近年来的迅速发展, 应用越来越广泛, 被著名 IT 开发杂志 SDTimes 评选为 2013SDTimes100, 位列 "API, 库和框架" 分类第 6 位, 被认为是该领域的佼佼者.
Django 的主要目的是简便, 快速的开发数据库驱动的网站. 它强调代码复用, 多个组件可以很方便的以 "插件" 形式服务于整个框架, Django 有许多功能强大的第三方插件, 你甚至可以很方便的开发出自己的工具包. 这使得 Django 具有很强的可扩展性. 它还强调快速开发和 DRY(DoNotRepeatYourself) 原则.
django 官方网站: https://www.djangoproject.com/
django 源码: https://github.com/django/django
Django 框架遵循 MVC 设计, 并且有一个专有名词: MVT 框架.
Django 开发环境搭建
虚拟环境的安装
之前安装 python 包的命令: sudo pip3 install 包名;
包的安装路径:/usr/local/lib/python3.5/dist-packages;
安装同一个包的不同版本, 后安装的包会把原来安装的包覆盖掉. 这样, 如同一台机器上两个项目依赖于相同包的不同版本, 则会导致一些项目运行失败.
解决的方案就是: 虚拟环境.
虚拟环境是真实 python 环境的复制版本.
在虚拟环境中使用的 python 是复制的 python, 安装包也是安装在复制的 python 中.
安装虚拟环境的命令:
- )sudo pip install virtualenv #安装虚拟环境
- )sudo pip install virtualenvwrapper #安装虚拟环境扩展包
3) 编辑家目录下面的. bashrc 文件, 添加下面两行.
- export WORKON_HOME=$HOME/.virtualenvs
- source /usr/local/bin/virtualenvwrapper.sh
4) 使用 source .bashrc 使其生效一下.
示例:
- [email protected]:~$ pwd
- /home/python
- [email protected]:~$ vi .bashrc
- // 添加上面两行内容
- [email protected]:~$ source .bashrc
- [email protected]:~$ mkvirtualenv -p python3 cp15
- (cp15) [email protected]:~$ deactivate
- [email protected]:~$ workon cp15
- (cp15) [email protected]:~$ pip install django==1.8.2
虚拟环境的创建和使用
创建虚拟环境命令: mkvirtualenv 虚拟环境名
创建 python3 虚拟环境: mkvirtualenv -p python3 cp15
进入虚拟环境工作: workon 虚拟环境名
查看机器上有多少个虚拟环境: workon 空格 + 两个 tab 键
退出虚拟环境: deactivate
删除虚拟环境: rmvirtualenv 虚拟环境名
虚拟环境下安装包的命令: pip install 包名
注意: 不能使用 sudo pip install 包名, 这个命令会把包安装到真实的主机环境上而不是安装到虚拟环境中.
apt-get install 软件
pip install python 包名
安装 django 环境: pip install django==1.8.2
查看虚拟环境中安装了哪些 python 包:
- pip list
- pip freeze(和 list 的区别在于会少几个包, 在网站上线的时候会使用该命令)
注意, 在虚拟环境中编辑和创建文件不只是放在虚拟环境中, 外部也有, 虚拟环境只是决定那些包安装在哪.
创建虚拟环境时, 虚拟机要联网.
Django 项目和应用创建
项目创建
创建项目命令:
django-admin startproject 项目名
注意: 创建应用必须先进入虚拟环境.
项目目录及作用如下:
__init__.py: 说明 test1 是一个 python 包.
settings.py: 项目的配置文件;
urls.py: 进行 url 路由的配置;
wsgi.py: Web 服务器和 Django 交互的入口;
manage.py: 项目的管理文件;
应用创建
一个项目由很多个应用组成的, 每一个应用完成一个特定的功能.
创建应用命令如下:
python manage.py startapp 应用名
注意: 创建应用时需要先进入项目目录.
应用目录及作用如下:
__init__.py: 说明目录是一个 python 模块;
models.py: 写和数据库相关的内容;
views.py: 接收请求, 进行处理, 与 M 和 T 进行交互, 返回应答;
定义处理函数, 视图函数.
tests.py: 写测试代码的文件;
admin.py: 网站后台管理相关的文件;
建立应用和项目之间的联系, 需要对应用进行注册.
修改 settings.py 中的 INSTALLED_APPS 配置项.
- INSTALLED_APPS = (
- 'django.contrib.admin',
- 'django.contrib.auth',
- 'django.contrib.contenttypes',
- 'django.contrib.sessions',
- 'django.contrib.messages',
- 'django.contrib.staticfiles',
- '应用名',
- )
运行开发 Web 服务器命令:
python manage.py runserver
Django 项目和应用创建示例:
- [email protected]:~$ workon cp15
- (cp15) [email protected]:~$ mkdir day01
- (cp15) [email protected]:~$ cd day01
- (cp15) [email protected]:~/day01$ django-admin startproject test1
- (cp15) [email protected]:~/day01$ ls
- test1
- (cp15) [email protected]:~/day01$ cd test1/
- (cp15) [email protected]:~/day01/test1$ tree
- (cp15) [email protected]:~/day01/test1$ ls
- manage.py test1
- (cp15) [email protected]:~/day01/test1$ python manage.py startapp booktest
- (cp15) [email protected]:~/day01/test1$ ls
- booktest manage.py test1
- (cp15) [email protected]:~/day01/test1$ cd booktest/
- (cp15) [email protected]:~/day01/test1/booktest$ tree
- .
├── admin.py
├── __init__.py
├── migrations
│ └── __init__.py
├── models.py
├── tests.py
└── views.py
- 1 directory, 6 files
- // 使用 pycharm 打开 home/python/cp15/test1, 在 settings 文件进行应用注册
- (cp15) [email protected]:~/day01/test1$ python manage.py runserver
以后所有利用虚拟环境开发的项目, 要在命令行对项目进行改动, 都要先进入虚拟环境下再操作.
来源: http://www.bubuko.com/infodetail-3096635.html