0
点赞
收藏
分享

微信扫一扫

django学习笔记001-django环境的搭建和项目的建立


虚拟环境的搭建

在开发过程中,当需要使用python的包时可以联网安装

sudo pip3 install 包名称

使用如上命令,会将包安装到/usr/local/lib/python3.5/dist-packages下。
产生的问题

如果在一台机器上,想开发多个不同的项目,需要用到同一个包的不同版本,如果还使用上面的命令,在同一个目录下安装或者更新,其它的项目必须就无法运行了,怎么办呢?

解决方案:虚拟环境。

那么什么是虚拟环境呢?

这里给大家举一个简单的例子,桌面上有一个word文件,我们打开修改这个文件,修改了一会之后发现还是原来的文件比较好,这个时候我想找回原来的文件就比较困难了。那么怎么办呢?就有这样一种解决方案,在修改文件之前,先复制一份,然后在副本文件里进行修改,这样即使发现修改有错,也不会影响原始文件。

虚拟环境其实就是对真实pyhton环境的复制,这样我们在复制的python环境中安装包就不会影响到真实的python环境。通过建立多个虚拟环境,在不同的虚拟环境中开发项目就实现了项目之间的隔离。

创建

首先安装虚拟环境,命令如下:

sudo pip3 install virtualenv #安装虚拟环境

接下来还要安装虚拟环境扩展包,命令如下:

sudo pip3 install virtualenvwrapper

安装虚拟环境包装器的目的是使用更加简单的命令来管理虚拟环境。

修改用户家目录下的配置文件​​.bashrc​​,添加如下内容:

export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

使用source .bashrc命令使配置文件生效。

创建python3虚拟环境的命令如下:

mkvirtualenv -p python3 虚拟环境名称
例:
mkvirtualenv -p python3 py_django

创建虚拟环境

小总结

创建成功后,会自动工作在这个虚拟环境上。
创建虚拟环境需要联网。
工作在虚拟环境上,提示符最前面会出现"(虚拟环境名称)"。
所有的虚拟环境,都位于/home/python/下的隐藏目录.virtualenvs下。

退出

退出虚拟环境的命令如下:

deactivate

退出虚拟环境
查看与使用

查看所有虚拟环境的命令如下:

提示:workon后面有个空格,再按两次tab键。

workon 两次tab键

查看虚拟环境

使用虚拟环境的命令如下:

写出名称的前部分后,可以使用tab键补齐

workon 虚拟环境名称
例:
workon py_django

使用虚拟环境

提示:注意提示符的变化

删除

删除虚拟环境的命令如下:

rmvirtualenv 虚拟环境名称

例:

先退出:deactivate
再删除:rmvirtualenv py_django

删除虚拟环境
包操作

在虚拟环境中可以使用pip命令操作python包,安装命令如下:

pip install 包名称

注意:在虚拟环境中不可使用sudo pip install 包名称 来安装python包,这样安装的包实际是安装在了真实的主机环境上。

查看已安装的python包命令如下:

pip list  
pip freeze

这两个命令都可已查看当前工作的虚拟环境中安装了哪些python包,只是显示的格式稍有不同。

安装django包

后面要学习使用django,我们使用的是django1.8.2的版本,这是一个稳定性高、使用广、文档多的版本,注意,如果前面删除过虚拟环境py_django,则需要先创建一下,否则直接安装django包即可。

mkvirtualenv py_django

然后安装django1.8.2的包,命令如下:

pip install django==1.8.2

安装django包

django学习笔记001-django环境的搭建和项目的建立_django


看到上面这个内容,说明django环境就安装成功了。

项目的创建

创建图书管理项目

我们以一个电商网站为例,网站上有跟用户有关的页面,有跟商品有关的页面,还有跟订单有关的页面,这样的一块内容其实就是网站的一个功能模块。

在django中,项目的组织结构为一个项目包含多个应用,一个应用对应一个业务模块。
示例

创建项目的名称为test1,完成"图书-英雄"信息的维护,创建应用名称为booktest。
创建项目

在当前用户的某个目录下创建项目,这样不会发生权限问题。

此处在/home/python/pytest/目录下创建项目

cd /home/python/
mkdir pytest
cd pytest

创建项目的命令如下:

django-admin startproject 项目名称
例:
django-admin startproject test1

django学习笔记001-django环境的搭建和项目的建立_虚拟环境_02

接下来可以使用IDE打开此目录,开发项目了,此处使用pycharm打开test1目录。

项目默认目录说明

进入test1目录,查看目录树形结构

cd test1
tree

目录结构如下图:

django学习笔记001-django环境的搭建和项目的建立_虚拟环境_03


manage.py是项目管理文件,通过它管理项目。

与项目同名的目录,此处为test1。

init.py是一个空文件,作用是这个目录test1可以被当作包使用。

settings.py是项目的整体配置文件。

urls.py是项目的URL配置文件。

wsgi.py是项目与WSGI兼容的Web服务器入口,详细内容会在布署中讲到。

创建应用

使用一个应用开发一个业务模块,此处创建应用名称为booktest,完成图书-英雄的信息维护。

创建应用的命令如下:

python manage.py startapp booktest

django学习笔记001-django环境的搭建和项目的建立_django_04


_init.py_是一个空文件,表示当前目录booktest可以当作一个python包使用。

tests.py文件用于开发测试用例,在实际开发中会有专门的测试人员,这个事情不需要我们来做。

models.py文件跟数据库操作相关。
views.py文件跟接收浏览器请求,进行处理,返回页面相关。
admin.py文件跟网站的后台管理相关。
migrations文件夹之后给大家介绍。

安装应用

应用创建成功后,需要安装才可以使用,也就是建立应用和项目之间的关联,在​​test1/settings.py中INSTALLED_APPS​​下添加应用的名称就可以完成安装。

初始项目的INSTALLED_APPS如下图:

django学习笔记001-django环境的搭建和项目的建立_python_05

接下来在元组中添加一个新的项,当前示例为booktest

'booktest',

django学习笔记001-django环境的搭建和项目的建立_虚拟环境_06

开发服务器

在开发阶段,为了能够快速预览到开发的效果,django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用。

运行服务器命令如下:

python ​​manage.py​​​ runserver ip:端口
例:
python ​​​manage.py​​ runserver

可以不写IP和端口,默认IP是127.0.0.1,默认端口为8000。

服务器成功启动后如下图:

django学习笔记001-django环境的搭建和项目的建立_虚拟环境_07

紧接着在浏览器中输入网址“127.0.0.1:8000”,或者按着ctrl键点击上图中标示出来的地址,可以查看当前站点开发效果。

django学习笔记001-django环境的搭建和项目的建立_虚拟环境_08


举报

相关推荐

0 条评论