freeCodeCamp/guide/chinese/miscellaneous/installing-flask-in-virtual.../index.md

100 lines
3.6 KiB
Markdown
Raw Normal View History

---
title: Installing Flask in Virtual Environment
localeTitle: 在虚拟环境中安装Flask
---
如果您想使用Flask那么您来对地方了但安装Flask只是因为你想在Flask中探索Web开发。我们总是会推荐Django而不是Flask因为在Flask中构建大型Web应用程序变得很困难;如果您不熟悉Python中的Web开发。
Flask是一个微框架;您可以从标准Web框架中选择您希望拥有的基本准系统功能。但如果你不想做所有的麻烦并专注于建立你的想法;或许Django将成为未来发展道路上更好的公司。
我假设您**没有**跳过安装Python 3并在虚拟环境中使用它的部分。
首先确保您不在虚拟环境中。然后创建一个名为`py3-flask`的新虚拟环境
```
$ mkvirtualenv py3-flask --python=/usr/bin/python3
```
现在,执行`workon`命令以查看计算机中的虚拟环境列表。这应该列出`py3-flask` 。
在此之后,激活此环境:
```
$ workon py3-flask
```
您的虚拟环境将使用Python解释器的副本激活具有Python 3属性。你应该跑
```
$ python --version
```
确保您确实在Python 3环境中。
需要明确的是如果您已经按照上一节安装了Django - 它**不**应该在这种环境中。我们正在使用虚拟环境;保持我们不同框架的安装分开。
确定,运行
```
pip freeze
```
确保Django未列在上面命令生成的输出列表中。
现在让我们安装Flask。对于您的细读这是[官方安装指南](http://flask.pocoo.org/docs/0.10/installation/) 。但是很多开发人员更喜欢在Flask上安装一些额外的软件包;了解更多功能。
要安装Flask请执行
```
$ pip install flask
```
再次运行`pip freeze`时,它应该在列出的包中显示`Flask` 。
像这样运行长命令很麻烦。幸运的是Python域中也有类似`package.json`东西 - 依赖项列表,包管理器可以通过从中央存储库下载适当的版本来复制环境。
标准是使用`pip freeze`并将输出记录到本地文件,该文件可以是源控制的。
```
$ pip freeze > requirements.txt
```
这是我的环境中的`requirements.txt`的内容在安装了这些Flask软件包之后。随着应用程序的增长您可以添加或删除更多包;但是现在,只需将以下内容复制粘贴到您所在目录中的文本文件中即可。
```
Babel==2.2.0
Flask==0.10.1
Flask-Babel==0.9
Flask-Login==0.3.2
Flask-Mail==0.9.1
Flask-OpenID==1.2.5
Flask-SQLAlchemy==2.1
Flask-WTF==0.12
Flask-WhooshAlchemy==0.56
Jinja2==2.8
MarkupSafe==0.23
SQLAlchemy==1.0.12
Tempita==0.5.2
WTForms==2.1
Werkzeug==0.11.4
Whoosh==2.7.2
blinker==1.4
coverage==4.0.3
decorator==4.0.9
defusedxml==0.4.1
flipflop==1.0
guess-language==0.2
itsdangerous==0.24
pbr==1.8.1
python3-openid==3.0.9
pytz==2015.7
six==1.10.0
speaklater==1.3
sqlalchemy-migrate==0.10.0
sqlparse==0.1.18
```
这个包列表来自[这里](http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world) 。
保存文件后,只需运行即可
```
$ pip install -r requirements.txt
```
包管理器会为您安装丢失的包!您应该使用源代码管理系统提交此文件。
上面的命令集假设你有一台Linux机器或Mac OSX机器;或者您正在使用cloud9或Nitrous上的云托管盒;或者你正在使用一个Vagrant盒子。
但是如果必须使用Windows计算机请考虑使用Windows Powershell而不是Windows CMD。大多数命令都是一样的。如果您需要任何帮助可能需要查看[此Stack Overflow讨论](http://stackoverflow.com/questions/17917254/how-to-install-flask-on-windows) 。