flask中的url_for与render_template()函数

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/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)







































你可能感兴趣的:(flask中的url_for与render_template()函数)