flask.url_for(endpoint,**values):为给定的endpoint创建URL。
endpoint:函数名称
**values:未知的变量将添加到URL中作为查询参数
如:
>>> from flask import Flask, url_for
>>> app = Flask(__name__)
>>> @app.route('/')
... def index():
pass...
>>> @app.route('/login')
... def login():
pass...
>>> @app.route('/user/<username>')
... def profile(username):
pass...
>>> with app.test_request_context():
... print url_for('index')
... print url_for('login')
... print url_for('login', next='/')
... print url_for('profile', username='John Doe')
...
/
/login?next=/
/user/John%20Doe
为了以防blueprints是active,可以在endpoint前加一个"." url_for('.index')
test_request_context(*args, **kwargs):创建一个WSGI环境
render_template(template_name_or_list, **context):根据上下文渲染模版
template_name_or_list:需要渲染的模版名或迭代器(其第一个模版名将被渲染)
context:作为参数传递给模版(前端网页)的变量。
如:
from flask import render_template
@app.route('/hello/')
@app.route('/hello/<name>')
def hello(name=None):
return render_template('hello.html', name=name)