用windows下的Anaconda搭建Django虚拟环境
Django 是一个Python定制框架,可用于简便、快速的开发数据库驱动的web站点。
要使用Django,首先要建立一个虚拟工作环境。
那么,为什么要搭建虚拟环境呢?我们来看以下的开发场景:
假设要进行Python web开发,使用的是Django。手上还有两个老项目A和B需要维护,而新项目C也正在开发中。这里项目A使用的是django1.3,项目B使用的是django1.4,而新项目C使用的是Django1.8。那么问题来了,如何同时在本地进行ABC这三个项目的开发和维护?
正常的模式可能是这样:现在在A项目上有一个BUG需要修复,于是,先执行下面的命令,删除掉原来的版本:
pip uninstall django
然后再执行下面的命令安装django1.3:
pip install django==1.3
数分钟后,bug修复完毕,好,现在进行新项目C的开发了,然后又要重复上面的故事。
好了,这还是最理想的情况。什么?还有不理想的情况?是的,基于django的第三方依赖也是跟Django版本相关的,于是除了install和uninstall Django之外,还要uninstall和install其依赖,Orz,这特么的就尴尬了...
可见,虚拟环境的搭建是必备的步骤。在windows下,有多种搭建虚拟环境的方法。其中,Anaconda拥有强大而方便的包管理与环境管理的功能,可以轻松创建虚拟工作环境。安装好Anaconda后,可以在“开始菜单-所有程序”中,找到Anaconda Promt,这是一个类似于cmd的终端,可以用命令行来进行包和环境的管理。
现在,我们可以开始虚拟环境的搭建了。
1、创建环境
输入以下命令:
conda env list
可以看到此时仅有一个环境,叫做root,这个环境所在的目录就是Anaconda的安装目录(D:\Anaconda3)。接着,输入以下命令:
conda create -n my_env
conda create -n DjangoPath python=3.6.3
我们就成功地创建了一个新的虚拟工作环境。其中,“my_env”是这个环境的名称,在Anaconda的安装目录下面的envs文件夹下,新建了一个my_env文件夹(D:\Anaconda3\envs\my_env),它就是这个环境所在的目录。
2、环境管理
完成环境创建后,我们输入:
conda env list
此时,我们可以看到有两个工作环境,分别是:root,以及我们刚刚创建的my_env环境。root的目录旁有一个星号(*),代表此时虚拟环境还没有被激活。只有激活它,我们才能为这个虚拟环境进行包的安装和管理,为了激活它,我们输入以下命令:
activate my_env
此时我们可以看到,命令行的左侧多出了一个(my_env),代表我们当前是在该环境下进行命令行的操作。如果我们此时再输入:conda env list,可以看到星号(*)已经移到了刚刚创建的虚拟环境目录的左侧。需要注意的是,如果关闭了Anaconda Promt,再新再打开的话,那么还需要重新进行一次激活操作。
如果想要移除该环境,我们需要输入以下命令:
conda remove -n my_env --all
3、安装Django
在新的环境激活的情况下,我们在命令行中输入:
conda list
可以看到,此时该环境下没有安装任何的package。此时,我们开始使用Anaconda强大的包管理功能。在命令行中输入:
conda install django
pip install django==2.1.8(稳定版本,可以换别的版本)
它就会自动帮助我们在新环境下,安装Django以及一些配套安装的package。
导出pip安装清单
pip freeze > D:\
1.txt
使用清单批量安装
pip install -r
D:\
requirements.txt
1.txt文件在执行导出清单的路径下
4、创建项目
Django安装完成后,我们在命令行中输入:path,以查看当前环境的工作路径,如果一切正常的话,现在已经生成了一些my_env文件夹下的新路径。我们即将用到的django-admin.py就存放在D:\Anaconda3\envs\my_env\Scripts这个路径中。
现在,可以开始项目的创建了。首先,在命令行中用cd命令切换到我们希望存放项目文件夹的位置,例如:
cd D:\PycharmProjects\new_env
再执行以下命令创建项目:
django-admin startproject new_project .
后面的空格和句点千万不要忘记,否则部署应用程序时将遭遇一些配置问题。
如果django-admin.py运行失败了,那么在D:\Anaconda3\envs\my_env\Scripts路径中找到这个文件,将它的默认打开方式设为D:\Anaconda3\envs\my_env下的python.exe,再重新尝试执行命令。
最终,new_env文件夹下出现了名为new_project的项目文件夹,以及manage.py文件,于是我们完成了虚拟环境下的第一个项目创建工作
5,配置环境变量
file - setting --project interpreter
创建一个,路径找到虚拟环境的Python.exe
在pycharm的Terminal窗口下
生成requirements.txt;
pip freeze > requirements.txt;
生成的requirements文件和manage.py要同级;
需要生成本项目而不是整个虚拟环境需要的模块列表,那么需要:
pip install pipreqs
pipreqs ./
pipreqs ./ --encoding=utf-8 # 报错就执行下面这条
执行requirements文件:
pip install -r requirements.txt
pipreqs ./ --encoding=utf-8
用windows下的Anaconda搭建Django虚拟环境的更多相关文章
- windows下如何快速搭建web.py开发框架
在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...
- 在windows下如何快速搭建web.py开发框架
在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...
- Windows下Git服务器搭建[转]
Windows下Git服务器搭建 作为对前两天Git服务器搭建的一个整理,我想分别从服务端和客户端两个角度来记录下整个搭建过程,为了达到目标,我们需要哪些操作. (一)服务端软件和账号的安装配置 ...
- Windows下的环境搭建Erlang
Windows下的环境搭建 Erlang 一.安装编译器 在http://www.erlang.org/download.html下载R16B01 Windows Binary File并安装. 二. ...
- Windows下安装Anaconda
Windows下安装Anaconda Anaconda介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项.因为包含了大量的科学 ...
- Windows下的Anaconda+OpenCV的环境配置
Windows下的Anaconda+OpenCV的环境配置
- Windows下SVN服务器搭建方法整理(apache)
http://skydream.iteye.com/blog/437959 http://www.cnblogs.com/liuke209/archive/2009/09/23/1572858.htm ...
- 转载:Windows下三分钟搭建Shadowoscks服务器端
Windows下三分钟搭建Shadowoscks服务器端 之前在V2EX上有人问为啥没人做个在Windows上一键运行Shadowsocks服务器端的程序,我只想说……这是因为没人关注我的libQtS ...
- windows下sqli-labs的搭建及学习(POST篇)
windows下sqli-labs的搭建及学习(GET篇): http://blog.csdn.net/sherlock17/article/details/64454449 Less-11:基于错误 ...
随机推荐
- Sequence Models Week 3 Neural Machine Translation
Neural Machine Translation Welcome to your first programming assignment for this week! You will buil ...
- SpringCloud学习之Stream消息驱动【自定义通道】(十一)
如果不清楚本篇内容的,请务必先去看完上一篇再看本篇,否则阅读起来可能会有部分障碍和困难: 上一篇文章<SpringCloud学习之Stream消息驱动[默认通道](十)>我们简单用自定义通 ...
- 12 react 基础 的 css 过渡动画 及 动画效果 及 使用 react-transition-group 实现动画
一. 过渡动画 # index.js import React from 'react';import ReactDOM from 'react-dom';import App from './app ...
- HTML5 可缩放矢量图形(1)—SVG基础
参考文档1 SVG基础 SVG介绍 概念:SVG 是使用 XML 来描述二维图形和绘图程序的语言.(理解就是一个在网页上使用笔画图的过程) 什么是SVG SVG 指可伸缩矢量图形 (Scalable ...
- 专为前端开发者准备的15款优秀的Sublime Text插件
Sublime Text 已成为了目前最流行的代码编辑器之一.它的反应速度.简单易用性以及丰富的插件生态,让众多前端开发者们为之倾倒. 为了帮助开发者们更便捷地使用 Sublime Text ,我们决 ...
- linux messages日志出现kernel: nf_conntrack: table full, dropping packet
上述结果会让业务访问很慢!各种网络服务耗时大幅上升,各种time out,各种丢包,完全无法正常提供服务,大并发业务场景下,开防火墙很容易出现这种问题. 解决方法1:关闭分防火墙服务 解决方法2:修改 ...
- P1618 三连击(升级版)
题解: #include<stdio.h>int main(){ int A,B,C; scanf("%d %d %d",&A,&B,&C); ...
- Maven--Cargo远程部署
参考:https://www.digitalocean.com/community/questions/how-to-access-tomcat-8-admin-gui-from-different- ...
- 纯css隔行显示不同颜色
通过:nth-child(even) 属性来设置背景色可以使table表格偶数行显示不同颜色::nth-child(odd)设置背景色可以使table表格奇数行显示不同颜色:
- 微服务项目开发学成在线_day01_CMS服务端开发
05-CMS需求分析-什么是CMS 什么是CMS?CMS (Content Management System)即内容管理系统,不同的项目对CMS的定位不同.CMS有哪些类型? 每个公司对每个项目的C ...