Hello World flask mega

 环境配置     |      2018-09-07 12:23

作者是一个使用多种语言开发复杂程序并且拥有十多年经验的软件工程师。作者第一次学习 Python 是在为一个 C++ 库创建绑定的时候。

除了 Python,作者曾经用 PHP, Ruby, Smalltalk 甚至 C++ 写过 web 应用。在所有这些中,Python/Flask 组合是作者认为最为自由的一种。

应用程序简介

作为本教程的一部分–我要开发的应用程序是一个极具特色的微博服务器,我称之为 microblog 。

我会随着应用程序的不断地进展将涉及到如下这些主题:

用户管理,包括管理登录,会话,用户角色,权限以及用户头像。

数据库管理,包括迁移处理。

Web 表单支持,包括对各个字段的验证。

分页处理。

全文搜索。

用户邮件提醒。

HTML 模板。

支持多国语言。

缓存以及其它性能优化技术。

开发以及生产服务器的调试技巧。

在生产服务器上安装。

我希望这个应用程序将能够成为编写其它类型的 web 应用程序的一个样板,当它完成的时候。

要求

如果你有一台能够运行 Python 的机器,可能你将会很轻松。该教程中的应用程序能够完美地运行在 Windows, OS X 以及 Linux 上。除非另有说明,本系列的文章中提供的代码已经在 Python 2.7 和 3.4 上测试过。

本教程假定你很熟悉操作系统的终端窗口(命令提示符为 Windows 用户),清楚基本命令行文件管理功能。如果你还不熟悉这些的话,我强烈建议你先学习使用命令行,比如如何创建文件夹等,接着再继续。

最后,你应该还能够很舒服地(熟练地)编写 Python 代码。强烈推荐熟悉 Python 的 Python 模块和包 。

安装 Flask

好的,让我们开始吧!

现在我们必须开始安装 Flask 以及一些我们会用到的扩展。我首选的方式就是创建一个 虚拟环境 ,这个环境能够安装所有的东西,而你的主 Python 不会受到影响。另外一个好处就是这种方式不需要你拥有 root 权限。

因此,打开一个终端窗口,选择一个你想要放置应用程序的位置以及创建一个包含它的新的文件夹。让我们把这个应用程序的文件夹称为 microblog

如果你正在使用 Python 3.4,先进入到 microblog 目录中接着使用如下的命令创建一个虚拟环境:

$ python -m venv flask

需要注意地是在某些系统中你可能要使用 python3 来代替 python。上面的命令行在 flask 文件夹中创建一个完整的 Python 环境。

如果你使用 Python 3.4 以下的版本(包括 python 2.7),你需要在创建虚拟环境之前下载以及安装 virtualenv.py 。如果你在使用 Mac OS X,请使用下面的命令行安装:

$ sudo easy_install virtualenv

如果你使用 Linux,你需要获取一个包。例如,如果你使用 Ubuntu:

$ sudo apt-get install python-virtualenv

Windows 用户们在安装 virtualenv 上有些麻烦,因此如果你想省事的话,请直接安装 Python 3.4。在 Windows 上安装 virtualenv 最简单地方式就是先安装 pip,安装方式在 这里 <https://pip.pypa.io/en/latest/installing.html>。一旦安装好了 pip 的话,下面的命令可以安装 virtualenv:

$ pip install virtualenv

为了创建一个虚拟环境,请输入如下的命令行

$ virtualenv flask

上面的命令行在 flask 文件夹中创建一个完整的 Python 环境。

虚拟环境是能够激活以及停用的,如果需要的话,一个激活的环境可以把它的 bin 文件夹加入到系统路径。我个人是不喜欢这种特色,所以我从来不激活任何环境相反我会直接输入我想要调用的解释器的路径。

如果你是在 Linux, OS X 或者 Cygwin 上,通过一个接一个输入如下的命令行来安装 flask 以及扩展:

$ flask/bin/pip install flask $ flask/bin/pip install flask-login $ flask/bin/pip install flask-openid $ flask/bin/pip install flask-mail $ flask/bin/pip install flask-sqlalchemy $ flask/bin/pip install sqlalchemy-migrate $ flask/bin/pip install flask-whooshalchemy $ flask/bin/pip install flask-wtf $ flask/bin/pip install flask-babel $ flask/bin/pip install guess_language $ flask/bin/pip install flipflop $ flask/bin/pip install coverage

如果是在 Windows 上的话,命令行有些不同

$ flask\Scripts\pip install flask $ flask\Scripts\pip install flask-login $ flask\Scripts\pip install flask-openid $ flask\Scripts\pip install flask-mail $ flask\Scripts\pip install flask-sqlalchemy $ flask\Scripts\pip install sqlalchemy-migrate $ flask\Scripts\pip install flask-whooshalchemy $ flask\Scripts\pip install flask-wtf $ flask\Scripts\pip install flask-babel $ flask\Scripts\pip install guess_language $ flask\Scripts\pip install flipflop $ flask\Scripts\pip install coverage

这些命令行将会下载以及安装我们将会在我们的应用程序中使用的所有的包。

在 Flask 中的 “Hello, World”