资讯专栏INFORMATION COLUMN

Flask Web Development——安装

BetaRabbit / 2360人阅读

摘要:安装虚拟环境安装最方便的方法就是使用虚拟环境。在,以管理员身份选项运行命令提示符窗口。在基于的系统中,两个安装命令前面必须加上或作为用户执行。一旦安装完毕,程序可以通过普通账户执行。安装指令在网站上可以找到。在下,会自动安装。

1. 安装虚拟环境

安装 Flask 最方便的方法就是使用虚拟环境。虚拟环境是在Python解释器上的一个私有复制,你可以在一个隔绝的环境下安装packages,不会影响到你系统中全局的Python解释器。

虚拟环境非常有用,因为它可以防止系统出现包管理混乱和版本冲突的问题。为每个应用程序创建一个虚拟环境可以确保应用程序只能访问它们自己使用的包,从而全局解释器只作为一个源且依然整洁干净去更多的虚拟环境。另一个好处是,虚拟环境不需要管理员权限。

虚拟环境由第三方程序 virtualenv 创建。检查在你的系统中是否已经安装,可以输入以下命令:

$ virtualenv --version

如果你得到一个错误,你需要安装该程序。

  

注:Python 3.3增加了本地支持的虚拟环境通过venv模块和pyvenv命令。pyenv可以用来代替virtualenv,但是注意通过pyvenv创建的虚拟环境不包含pip,需要手动安装。这个限制会在Python 3.4中移除,到时候pyvenv可以当作完整的virtualenv替代品。

大多数Linux发行版都提供一个virtualenv包。例如,Ubuntu用户就可以使用以下命令进行安装:

$ sudo apt-get install python-virtualenv

如果你使用的是Mac OSX,你可以使用easy_install安装virtualenv:

$ sudo easy_install virtualenv

如果你使用的是Microsoft Windows或者是任何没有提供官方virtualenv包的操作系统,接下来你会有一个稍微复杂的安装过程。

使用你的web浏览器,导航到https://bitbucket.org/pypa/setuptools,setuptools安装程序的主页,找到链接下载一个叫ez_setup.py安装程序脚本。保存这个文件到你电脑的临时文件夹中,然后在那个目录下运行以下命令:

$ python ez_setup.py
$ easy_install virtualenv
  

注:前一个命令必须由管理员权限的账户发出。在Microsoft Windows,以管理员身份选项运行命令提示符窗口。在基于Unix的系统中,两个安装命令前面必须加上sudo或作为root用户执行。一旦安装完毕,virtualenv程序可以通过普通账户执行。

现在你需要创建文件夹用来组织从GitHub仓库中获取的示例代码。在十三页中《如何使用示例代码》讨论的那样,最方便的方法就是使用Git客户端直接从Github中检出代码。下面的命令从GitHub中下载示例代码并初始化应用程序文件目录为“1a”版本,初始版本的应用程序:

$ git clone https://github.com/miguelgrinberg/flasky.git
$ cd flasky
$ git checkout 1a

下一步就是使用virtualenv命令创建Python虚拟环境到flasky文件夹中。这个命令有一个需要的参数:虚拟环境的名称。一个指定名称的文件夹和在里面的、与虚拟环境相关的所有文件会在当前目录下被创建。一般给虚拟环境约定命名为venv:

$ virtualenv venv
New python executable in venv/bin/python2.7
Also creating executable in venv/bin/python
Installing setuptools............done.
Installing pip...............done.

现在你有一个venv文件夹在flasky文件夹里面和一个全新的虚拟环境,包含一个私有的Python解释器。使用虚拟环境的时候,你必须“激活”它。如果你是使用bash命令行工具(Linux和Mac OSX用户),你可以使用这个命令激活虚拟环境:

$ source venv/bin/activate

如果你是使用Microsoft Windows,激活命令是:

$ venvScriptsactivate

当虚拟环境被激活了,Python解释器的位置会被添加到PATH中,但是这个改动并不是永久的;它只影响当前命令会话。提醒一下,你激活了虚拟环境,该激活命令会将环境的名称包含在命令提示符里面:

(venv)$ 

当你在虚拟环境中完成工作并想回到全局Python解释器,在命令提示符中输入deactivate就可以了。

2. 使用pip安装python包

大多数的Python包是通过 pip 程序安装的,在创建虚拟环境的时候virtualenv会自动添加进去。当一个虚拟环境被激活后,pip程序的位置会被添加到PATH中。

  

注:如果你使用pyvenv创建虚拟环境在Python 3.3中,则必须手动安装pip。安装指令在pip网站上可以找到。在Python 3.4下,pyvenv会自动安装pip。

安装Flask到虚拟环境中,使用下面的命令:

(venv)$ pip install flask

通过这个命令,Flask和它的依赖集都会安装到虚拟环境中。你可以验证Flask是否正确安装通过启动Python解释器并试着导入它:

(venv)$ python
>>> import flask
>>>

如果需要安装的包比较多的时候,这样做会比较繁琐,我们还有一键安装的方法。首先新建一个文本文件,如:requirements.txt,然后将你需要安装的包名保存到该文件中(根据自己的需要),如下:

Babel==1.3
Flask==0.10.1
Flask-Login==0.2.7
Flask-SQLAlchemy==1.0
Flask-WTF==0.9.3
Jinja2==2.7.1
SQLAlchemy==0.8.2
WTForms==1.0.5
Werkzeug==0.9.4
psycopg2==2.5.1
...

最后你只需要输入以下命令,所有需要的包就可以全部安装好了:

pip install -r requirements.txt

如果没有出现错误,祝贺你:你可以准备进入下一章节,接着你就可以写你的第一个web应用程序了。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/37421.html

相关文章

  • Flask Web Development —— 基本应用程序结构(上)

    摘要:注对于开发者来说,传给应用程序构造函数的参数是比较容易弄混淆的。在应程序中定义路由的最便捷的方式是通过显示定义在应用程序实例之上的装饰器,注册被装饰的函数来作为一个路由。一个常见的模式是使用装饰器来注册函数作为一个事件处理程序。 在这一章,你将学习Flask应用程序不同部分。同时你将编写和运行你的第一个Flask web应用程序。 1、初始化 在这章,你将学到Flask应用程序的不...

    NusterCache 评论0 收藏0
  • Flask Web Development —— 大型应用程序结构(下)

    摘要:单元测试这个应用非常小以至于不需要太多的测试,但是作为示例会在示例中展示两个简单的测试定义。示例单元测试编写好的测试使用的是来自于标准库中标准的包。为了运行单元测试,可以在脚本中增加一个自定义的命令。 4、启动脚本 顶层目录中的manage.py文件用于启动应用。这个脚本会在示例7-8中展示。 示例7-8. manage.py:启动脚本 #!/usr/bin/env python im...

    whidy 评论0 收藏0
  • Flask Web Development —— 数据库(下)

    摘要:命令需要注册回调函数来将对象添加到导入列表。创建迁移脚本在,数据库迁移工作由迁移脚本完成。函数实施数据库更改,是迁移的一部分,函数则删除它们。另一方面,自动迁移通过寻找模型定义和数据库当前状态间的不同为和生成代码。 9、数据库在视图函数中的使用 在前面章节描述的数据库操作是可以在视图函数中直接使用的。示例5-5展示的新版本主页实现了用户输入名字并保存到数据库中。 示例5-5. he...

    buildupchao 评论0 收藏0
  • Flask Web Development —— 数据库(下)

    摘要:命令需要注册回调函数来将对象添加到导入列表。创建迁移脚本在,数据库迁移工作由迁移脚本完成。函数实施数据库更改,是迁移的一部分,函数则删除它们。另一方面,自动迁移通过寻找模型定义和数据库当前状态间的不同为和生成代码。 9、数据库在视图函数中的使用 在前面章节描述的数据库操作是可以在视图函数中直接使用的。示例5-5展示的新版本主页实现了用户输入名字并保存到数据库中。 示例5-5. he...

    jone5679 评论0 收藏0
  • Flask Web Development —— 数据库(下)

    摘要:命令需要注册回调函数来将对象添加到导入列表。创建迁移脚本在,数据库迁移工作由迁移脚本完成。函数实施数据库更改,是迁移的一部分,函数则删除它们。另一方面,自动迁移通过寻找模型定义和数据库当前状态间的不同为和生成代码。 9、数据库在视图函数中的使用 在前面章节描述的数据库操作是可以在视图函数中直接使用的。示例5-5展示的新版本主页实现了用户输入名字并保存到数据库中。 示例5-5. he...

    fasss 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<