1. Python环境安装(略)
http://jingyan.baidu.com/article/eb9f7b6da950c4869364e8f5.html
2. 使用pip安装Python包
如果安装配置pip自行百度搜索.
1. 使用pip安装flask --- pip install flask
安装完成后验证是否正确安装你可以启动Python解释器,
$ Python
>>> import flask
>>>
如果没有看到错误提示说明 flask安装成功
3. 环境安装完后后,开始第一个Flask web程序.
3.1 初始化
所有Flask程序都必须创建一个程序实例.
Code:
from flask import Flask
app = Flask(__name__)
Flask 类的构造函数只有一个必须指定的参数,即程序主模块或包的名字。在大多数程序中,Python 的__name__ 变量就是所需的值.
3.2 路由和视图函数
客户端(例如Web 浏览器)把请求发送给Web 服务器,Web 服务器再把请求发送给Flask程序实例。程序实例需要知道对每个URL 请求运行哪些代码,所以保存了一个URL 到Python 函数的映射关系。处理URL 和函数之间关系的程序称为路由
app.route 修饰器来声明路由
Code:
@app.route('/')
def index():
return '<h1>Hello,World!</h1>.'
如果你仔细观察日常所用服务的某些URL 格式,会发现很多地址中都包含可变部分。例如, 你的Facebook 资料页面的地址是http://www.facebook.com/<your-name>, 用户名(your-name)是地址的一部分。Flask 支持这种形式的URL,只需在route 修饰器中使用特殊的句法即可。下例定义的路由中就有一部分是动态名字:
@app.route('/user/<name>')
def user(name):
return '<h1>Hello, %s!</h1>' % name
尖括号中的内容就是动态部分,任何能匹配静态部分的URL 都会映射到这个路由上。调用视图函数时,Flask 会将动态部分作为参数传入函数。在这个视图函数中,参数用于生成针对个人的欢迎消息。程序的基本结构路由中的动态部分默认使用字符串,不过也可使用类型定义。例如,路由/user/<int:id>只会匹配动态片段id 为整数的URL。Flask 支持在路由中使用int、float 和path 类型。path 类型也是字符串,但不把斜线视作分隔符,而将其当作动态片段的一部分。
3.3 启动服务器
程序实例用run 方法启动Flask 集成的开发Web 服务器:
if __name__ == '__main__':
app.run(debug=True)
__name__=='__main__' 是Python 的惯常用法,在这里确保直接执行这个脚本时才启动开发Web 服务器。如果这个脚本由其他脚本引入,程序假定父级脚本会启动不同的服务器,因此不会执行app.run()。服务器启动后,会进入轮询,等待并处理请求。轮询会一直运行,直到程序停止,比如按Ctrl-C 键。
有一些选项参数可被app.run() 函数接受用于设置Web 服务器的操作模式。在开发过程中启用调试模式会带来一些便利,比如说激活调试器和重载程序。要想启用调试模式,我们可以把debug 参数设为True。
3.4 一个完整的程序
hello.py:一个完整的Flask 程序
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return '<h1>Hello World!</h1>'
if __name__ == '__main__':
app.run(debug=True)
要想运行这个程序,请确保激活了你之前创建的虚拟环境,并在其中安装了Flask。现在
打开Web 浏览器,在地址栏中输入http://127.0.0.1:5000/。图2-1 是浏览器连接到程序后的
示意图。
然后使用下述命令启动程序:
(venv) $ python hello.py
* Running on http://127.0.0.1:5000/
* Restarting with reloader