flask中的url_for與render_template()函數

flask.url_for(endpoint,**values):爲給定的endpoint建立URL。html

endpoint:函數名稱前端

**values:未知的變量將添加到URL中做爲查詢參數flask

如:app

 

>>> from flask import Flask, url_for函數

>>> app = Flask(__name__)url

>>> @app.route('/')htm

... def index():it

      pass...test

>>> @app.route('/login')import

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

相關文章
相關標籤/搜索