浅入浅出Flask框架:url_for

June 28th 2014  | Tags: flask, web

2014-06-28

url_for可以让你以软编码的形式生成url,提供开发效率。

示例


建立Flask项目

按照以下命令建立Flask项目HelloWorld:

mkdir HelloWorld
mkdir HelloWorld/static
mkdir HelloWorld/templates
touch HelloWorld/index.py

HelloWorld/static创建目录uploads,copy一张图片放到uploads目录中,命名为01.jpg

编写代码

编辑HelloWorld/index.py

from flask import Flask, url_for

app = Flask(__name__)

@app.route('/')
def hello_world():
    pass

@app.route('/user/<name>')
def user(name):
    pass

@app.route('/page/<int:num>')
def page(num):
    pass

@app.route('/test')
def test():
    print url_for('hello_world')
    print url_for('user', name='letian')
    print url_for('page', num=1, q='hadoop mapreduce 10%3')
    print url_for('static', filename='uploads/01.jpg')
    return ''

if __name__ == '__main__':
    app.run(debug=True)

运行HelloWorld/index.py。然后在浏览器中访问http://127.0.0.1:5000/testHelloWorld/index.py将输出以下信息:

/
/user/letian
/page/1?q=hadoop+mapreduce+10%253
/static//uploads/01.jpg

(完)