1、flask是一个轻量级的python web框架
·1、Flask 依赖两个外部库: Jinja2 模板引擎和 Werkzeug WSGI 套件
·2、安装:
# easy_install flask 安装
# python 测试安装是否成功
>>> import flask
2、增强工具:virtualenv(摘自:http://dormousehole.readthedocs.org/en/latest/installation.html#installation)
如果你使用 Mac OS X 或 Linux ,那么可以使用下面两条命令中任意一条:
$ sudo easy_install virtualenv
或更高级的:
$ sudo pip install virtualenv
上述命令中的任意一条就可以安装好 virtualenv 。也可以使用软件包管理器,在 Ubuntu 系统中可以试试: $ sudo apt-get install python-virtualenv
使用:
root@pc:/# mkdir flask
root@pc:/# cd flask/
root@pc:/flask# virtualenv venv 创建一个包含venv文件夹的项目文件夹:
New python executable in venv/bin/python
Installing setuptools, pip...done.
root@pc:/flask# ls
venv root@pc:/flask# . venv/bin/activate 每次使用项目时,必须先激活相应的环境
3、"Hello World"
(venv)root@pc:/flask# vim hello.py
编辑内容:
#coding=utf-
from flask import Flask #导入flask类
app = Flask(__name__) #生成该类的一个实例 @app.route('/') #调用一个app的route方法
def hello_work(): #定义一个处理方法
return '<h1>hello world</h1>' if __name__ == '__main__': #确保服务器只会在使用python解释器运行代码的情况下运行
app.run()
保存退出,并执行:
root@pc:/flask# python hello.py
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [/Apr/ ::] "GET / HTTP/1.1" -
根据提示,打开浏览器,输入网址:http://127.0.0.1:5000/
4、设置网络中其它电脑也可以访问:
修改app.run()为:
app.run(host='0.0.0.0') #用host参数,设定全网段可以访问
保存,ctrl + shift + T打开另一个终端,执行:
root@pc:/flask# python hello.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
可以看到ip地址变了,现在可用自己的ip进行访问:
root@pc:/# ifconfig
eth0 Link encap:以太网 硬件地址 ::e6:d0:d5:2e
inet 地址:192.168.168.80 。。。。。
5、调试模式:绝对不能在生产环境中使用调试模式
(原因:它允许执行任意代码,这样会成为一个重大安全隐患)
打开调试模式的第一种方式:
app.debug = True #第一种方式:在应用对象上设置标志
app.run(host='0.0.0.0') #用host参数,设定全网段可以访问
对应的:
root@pc:/flask# python hello.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
第二种方式:
app.run(debug=True,host='0.0.0.0') #第二种方式:作为参数传递给run方法
对应的:
root@pc:/flask# python hello.py
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
至此,整个程序修改为:
#coding=utf-
from flask import Flask #导入flask类
app = Flask(__name__) #生成该类的一个实例 @app.route('/') #调用一个app的route方法
def hello_work(): #定义一个处理方法
return '<h1>hello world</h1>' if __name__ == '__main__': #确保服务器只会在使用python解释器运行代码的情况下运行
#app.debug = True #第一种方式:在应用对象上设置标志
#app.run(host='0.0.0.0') #用host参数,设定全网段可以访问
app.run(debug=True,host='0.0.0.0') #第二种方式:作为参数传递给run方法
详情请看参考网址:
http://dormousehole.readthedocs.org/en/latest/
http://docs.jinkan.org/docs/flask/quickstart.html#a-minimal-application