美文网首页
python项目虚拟环境管理virtualenv+Django实

python项目虚拟环境管理virtualenv+Django实

作者: 阿敏其人 | 来源:发表于2018-10-07 13:03 被阅读41次

本文出自“阿敏其人”简书博客。转载请著名出处和链接地址。


每一个版本python版本项目,采用的python版本可能不一样;每一个python依赖的版本库可能不一样。

所以,我们需要对每一个python项目进行环境隔离

避免不同项目之间因为python版本和依赖的库的原因出问题。

我们需要做到两点:

  • 1、不同的项目可以区分python版本
  • 2、不同的项目可以区分依赖包

virtualenv + virtualenvwrapper

virtualenv: 常见虚拟环境,隔离python版本

virtualenvwrapper: virtualenvwrapper是virtualenv的一个扩展包,可以让你更加方便的使用virtualenv.

我们构建虚拟环境,通常是 virtualenv + virtualenvwrapper

virtualenv

virtualenv: 常见虚拟环境,隔离python版本

核心

虚拟环境是真实python环境的复制版本。
在虚拟环境中使用的python是复制的python。

virtualenvwrapper

优点:

  • 将所有虚拟环境整合在一个目录下
  • 管理(新增,删除,复制)虚拟环境
  • 方便切换虚拟环境

虚拟环境的搭建

安装虚拟环境

在linux下安装虚拟环境,比如ubuntu16.04

  • 1、安装虚拟环境
sudo pip install virtualenv

.

  • 2、安装虚拟环境扩展包
sudo pip install virtualenvwrapper

.

  • 3、编辑家目录下面的.bashrc文件,添加下面两行。
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh

.

  • 4、执行source .bashrc命令,让配置生效
source .bashrc

我们这里是两步一起实现,步骤1、2、3是连在一起的。当然也可以分开。

管理虚拟环境

所谓管理,无非就是增删改查。

创建虚拟环境

  • 创建默认虚拟环境命令:
mkvirtualenv 虚拟环境名

.

  • 创建python3虚拟环境:
mkvirtualenv -p python3 test_pj
(指定python3版本,项目名为 test_pj)

进入虚拟环境工作

workon 虚拟环境名
image.png

查看机器上有多少个虚拟环境

workon或者lsvirtualenv -b

退出虚拟环境

deactivate

删除虚拟环境

rmvirtualenv 虚拟环境名

虚拟环境安装包

虚拟环境下安装包
pip install 包名

注:如果使用 sudo pip install 包名安装包,那么这个命令会把包安装到真实的主机环境上,而不是安装到虚拟环境中。

比如安装Django

这个语句是在虚拟环境下执行的

pip install django==1.8.2
虚拟环境下软件
apt-get install 软件

查看虚拟环境中安装了哪些python包

两种方式,pip listpip freeze

我们在test_pj这个虚拟环境中安装了Django1.8.2

方式一
pip list
image.png

.
.

方式二
pip freeze
image.png

两者都可以,区别是list会把默认安装的也显示上。

虚拟环境中创建Django项目

前提是我们已经创建了虚拟环境,已经安装可Django

创建Django项目

进入虚拟环境后,创建项目

django-admin startproject 项目名

项目目录

创建好项目中,进入项目,tree一下

image.png

结构分析

  • __init__.py: 说明test1是一个python包。
  • settings.py: 项目的配置文件。使用什么数据库之类的
  • urls.py: 进行url路由的配置。
  • wsgi.py: web服务器和Django交互的入口。
  • manage.py: 项目的管理文件。

创建Django应用

在Django中,一个功能模块使用一个应用来实现。

创建应用的命令如下

python manage.py startapp 应用名

注意:创建应用时需要先进入项目目录。

应用目录如下

(创建app之后进入app目录,tree一下)

image.png
  • __init__.py: 说明目录是一个Python模块。
  • models.py: 写和数据库项目的内容, 设计模型类。
  • views.py: ,接收请求,进行处理,与M和T进行交互,返回应答。
    定义处理函数,视图函数。
  • tests.py: 写测试代码的文件。
  • admin.py: 网站后台管理相关的文件。

应用注册

建立应用和项目之间的联系,需要对应用进行注册。

修改settings.py中的INSTALLED_APPS配置项。

进行注册


image.png

启动项目服务器

Django本身给每一个项目配置一个web服务器

运行开发web服务器命令(虚拟环境中):

python manage.py runserver

执行效果下图:


image.png

访问http://127.0.0.1:8000/:
![image]

image.png

退出
如终端所言,control + c 。

本文完。

相关文章

网友评论

      本文标题:python项目虚拟环境管理virtualenv+Django实

      本文链接:https://www.haomeiwen.com/subject/zrrlaftx.html