Django虚拟环境搭建和准备
1,虚拟环境的搭建
1,为什么需要搭建虚拟环境
基于目前所有第三方包安装都是直接通过 pip install xx 的方式进行安装的,这样安装会将那个包安装到你的系统级别的python环境中。既然是这样,所以当你系统安装了一套python环境,但是有另外一个和你系统安装的python环境不一样项目需要运行时,这个时候该电脑安装的环境就不兼容了。需要另外一套python环境来运行这个项目。而这些可以通过使用virtualenv来实现。
2,安装virtualenv
virtual(虚拟)+env(环境)
virtualenv是用来创建虚拟环境的软件工具,我们可以通过pip或者pip3来安装:
pip install virtualenv
pip3 install virtualenv
3,创建虚拟环境
创建虚拟环境非常简单,通过以下命令就可以创建了:
virtualenv [虚拟环境的名字]
如果你当前的Python3/Scripts的查找路径在Python2/Scripts的前面,那么将会使用python3作为这个虚拟环境的解释器。如果python2/Scripts在python3/Scripts前面,那么将会使用Python2来作为这个虚拟环境的解释器。
4,进入环境:
虚拟环境创建好了以后,那么可以进入到这个虚拟环境中,然后安装一些第三方包,进入虚拟环境在不同的操作系统中有不同的方式,一般分为两种,第一种是Windows,第二种是*nix:
①windows进入虚拟环境:进入到虚拟环境的Scripts文件夹中,然后执行activate。
C:\Users\wqmcr\abc-env\Scripts>dir # 虚拟环境目录为abc-env
驱动器 C 中的卷没有标签。
卷的序列号是 542C-7984
C:\Users\wqmcr\abc-env\Scripts 的目录
......
C:\Users\wqmcr\abc-env\Scripts>activate # 输入activate即可进入虚拟环境
(abc-env) C:\Users\wqmcr\abc-env\Scripts> # 最后出现了这个表示已经成功进入了虚拟环境。
②*nix进入虚拟环境
source /path/to/virtualenv/bin/activate
# source 后面指向虚拟环境所在的路径,注意linux系统activate是在bin目录下面
一旦你进入到了这个虚拟环境中,你安装包,卸载包都是在这个虚拟环境中,不会影响到外面的环境。
5,退出虚拟环境
退出虚拟环境很简单,通过一个命令就可以完成:deactivate。
(abc-env) C:\Users\wqmcr\abc-env\Scripts>deactivate
C:\Users\wqmcr\abc-env\Scripts>
退出这个环境后,会到原系统的环境。
6,指定Python版本创建虚拟环境
在电脑的环境变量中,一般是不会去更改一些环境变量的顺序的。也就是说比如你的Python2/Scripts在Python3/Scripts的前面,那么你不会经常去更改他们的位置。但是这时候我确实是想在创建虚拟环境的时候用Python3这个版本,这时候可以通过-p参数来指定具体的Python解释器:
virtualenv -p C:\Python36\python.exe [virutalenv name]
# -p 后面为想执行的python版本的执行文件路径。
7,virtualenvwrapper的安装
virtualenvwrapper这个软件包可以让我们管理虚拟环境变得更加简单。不用再跑到某个目录下通过virtualenv来创建虚拟环境,并且激活的时候也要跑到具体的目录下去激活。
安装virtualenvwrapper:
windows
pip install virtualenvwrapper-win。
*nix
pip install virtualenvwrapper
8,virtualenvwrapper基本使用:
实际开发当中,不用安装virtualenv,安装virtualenvwrapper即会自动安装virtualenv。
①创建虚拟环境:
mkvirtualenv my_env
mkvirtualenv后面跟上虚拟环境的名字。
这里统一在你当前用户下创建一个Envs的文件夹,然后将这个虚拟环境安装到这个目录下。
如果你电脑中安装了python2和python3,并且两个版本中都安装了virtualenvwrapper,那么将会使用环境变量中第一个出现的Python版本来作为这个虚拟环境的Python解释器。
②切换到某个虚拟环境:
workon my_env
③退出当前虚拟环境:
deactivate
④删除某个虚拟环境:
rmvirtualenv my_env
⑤列出所有虚拟环境:
lsvirtualenv
⑥进入到虚拟环境所在的目录:
cdvirtualenv my_env
⑦创建虚拟环境的时候指定Python版本:
在使用mkvirtualenv的时候,可以指定--python的参数来指定具体的python路径:
mkvirtualenv --python==C:\Python36\python.exe wqm_env
9,修改mkvirtualenv的默认路径
在我的电脑->右键->属性->高级系统设置->环境变量->系统变量中添加一个参数WORKON_HOME,将这个参数的值设置为你需要的路径。
2,Django准备
1,使用Django前开发环境的准备
在学习Django之前,需要做好以下准备工作:
①确保已经安装Python 3.6以上的版本,教学以Python 3.6版本进行讲解。
②安装virtualenvwrapper,这个是用来创建虚拟环境的包,使用虚拟环境可以让我们的包管理更加的方便,也为以后项目上线需要安装哪些包做好了准备工作。安装方式在不同的操作系统有区别。以下解释下:
windows:pip instal virtualenvwrapper-win。
linux/mac:pip install virtualenvwrapper。
③虚拟环境相关操作:
- 创建虚拟环境:mkvirtualenv --python='[python3.6文件所在路径]' [虚拟环境名字]。比如mkvirtualenv --python='C:\Python36\python3.6' django-env。
- 进入到虚拟环境:workon [虚拟环境名称]。比如workon django-env。
- 退出虚拟环境:deactivate。
④首先进入到虚拟环境workon django-env,然后通过pip install django==2.0安装django,教学以Django 2.0版本为例进行讲解。
⑤安装pycharm profession 2017版或者Sublime Text 3等任意一款你喜欢的编辑器。(推荐使用pycharm,如果由于电脑性能原因,可以退而求其次使用Sublime Text)。如果使用pycharm,切记一定要下载profession(专业版),community(社区版)不能用于网页开发。
Sublime Text 3 3143 下载
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
–注册码1– ZYNGA INC. 50 User License EA7E-811825 927BA117 84C9300F 4A0CCBC4 34A56B44 985E4562 59F2B63B CCCFF92F 0E646B83 0FD6487D 1507AE29 9CC4F9F5 0A6F32E3 0343D868 C18E2CD5 27641A71 25475648 309705B3 E468DDC4 1B766A18 7952D28C E627DDBA 960A2153 69A2D98A C87C0607 45DC6049 8C04EC29 D18DFA40 442C680B 1342224D 44D90641 33A3B9F2 46AADB8F –注册码2– sgbteam Single User License EA7E-1153259 8891CBB9 F1513E4F 1A3405C1 A865D53F 115F202E 7B91AB2D 0D2A40ED 352B269B 76E84F0B CD69BFC7 59F2DFEF E267328F 215652A3 E88F9D8F 4C38E3BA 5B2DAAE4 969624E7 DC9CD4D5 717FB40C 1B9738CF 20B3C4F1 E917B5B3 87C38D9C ACCE7DD8 5F7EF854 86B9743C FADC04AA FB0DA5C0 F913BE58 42FEA319 F954EFDD AE881E0B 在help(帮助里面)-enter license-然后把上面两个中的一个复制上去就可以了。
⑥安装最新版MySQL,windows版的MySQL的下载地址是:https://dev.mysql.com/downloads/windows/installer/5.7.html。
如果你用的是其他操作系统,那么可以来到这个界面选择具体的MySQL来进行下载:https://dev.mysql.com/downloads/mysql/。
⑦安装pymysql,这个库是Python来操作数据库的。没有他,django就不能操作数据库。安装方式也比较简单,pip install pymysql就可以啦。
2,初始Django
①Django简介
Django,发音为[`dʒæŋɡəʊ],Django诞生于2003年秋天,2005年发布正式版本,由Simon和Andrian开发。当时两位作者的老板和记者要他们几天甚至几个小时之内增加新的功能。两人不得已开发了Django这套框架以实现快速开发目的,因此Django生来就是为了节省开发者时间的。Django发展至今,被许许多多国内外的开发者使用,已经成为web开发者的首选框架。
选读:
Python+Django如何支撑了7 亿月活用户的Instagram?
Django版本和Python版本
web服务器和应用服务器以及web应用框架:
- web服务器:负责处理http请求,响应静态文件,常见的有Apache,Nginx以及微软的IIS.
- 应用服务器:负责处理逻辑的服务器。比如php、python的代码,是不能直接通过nginx这种web服务器来处理的,只能通过应用服务器来处理,然后把数据返回给web服务器,web服务器再返回给浏览器。常见的应用服务器有uwsgi(python)、tomcat(java)等。
- web应用框架:一般使用某种语言,封装了常用的web功能的框架就是web应用框架,flask、Django以及Java中的SSH(Structs2+Spring3+Hibernate3)框架都是web应用框架。
Django和MVC:
Django是一个遵循MVC设计模式的框架,MVC是Model、View、Controller的三个单词的简写。分别代表模型、视图、控制器。以下图片说明这三者之间的关系:
而Django其实也是一个MTV的设计模式。MTV是Model、Template、View三个单词的简写。分别代表模型、模版、视图。以下图片说明这三者之间的关系:
②url组成部分详解
URL是Uniform Resource Locator 的简写,统一资源定位符
一个URL由以下几部分组成:
scheme://host:port/path/?query-string=xxx#anchor
- scheme:代表的是访问的协议,一般为http或者https以及ftp等。
- host:主机名,域名,比如www.baidu.com。
- port:端口号。当你访问一个网站的时候,浏览器默认使用80端口。
- path:查找路径。比如:www.jianshu.com/trending/now,后面的trending/now就是path。
- query-string:查询字符串,比如:www.baidu.com/s?wd=python,后面的wd=python就是查询字符串。
- anchor:锚点,后台一般不用管,前端用来做页面定位的。
注意:URL中的所有字符都是ASCII字符集,如果出现非ASCII字符,比如中文,浏览器会进行编码再进行传输。
更多:
Django
的官网:https://www.djangoproject.com/Django Book
2.0版本的中文文档:http://djangobook.py3k.cn/2.0/chapter01/ 不是真正意义上面的django2.0文档Django
2.0版本的中文文档:http://python.usyiyi.cn/translate/django2/index.html