flask第八篇——url_for【1】

咱們已經知道,知道了url就能夠找到對應的視圖函數,那麼如今問題來了,若是咱們知道了視圖函數,要怎麼找到url呢?這時候咱們就須要url_for函數了。 # coding: utf-8 from flask import Flask, url_for import flask app = Flask(__name__) # type: Flask app.debug = True # 根目錄 @app.route('/') def hello_world(): return 'Hello World!' @app.route('/login/') def login(): print url_for('hello_world') return 'success' if __name__ == '__main__': app.run() 運行上面代碼: 能夠看到控制檯打印出了hello_world函數的url。 當咱們講了模板之後,常常會遇到a標籤好比 咱們都知道href裏面放的是一個連接,試想如今咱們判斷用戶是否登陸成功,若是登陸成功就跳轉到p1頁面,登陸失敗就跳轉到p2頁面,那麼咱們通常是不會再href裏直接貼p1頁面的url的,由於一旦p1頁面地址改變,那麼貼的url就會失效,試想你那麼多代碼,怎麼可能記得住p1的url都在哪裏用了呢?這時候就能夠看到url_for的好處了,就是說咱們會在href裏放url_for咱們須要反轉的函數。 再看一個例子: # coding: utf-8 from flask import Flask, url_for import flask app = Flask(__name__) # type: Flask app.debug = True # 根目錄 @app.route('/') def hello_world(): return 'Hello World!' @app.route('/login/') def login(): return url_for('hello_world') @app.route('/list/') def mylist(): return url_for('login') if __name__ == '__main__': app.run() 這時候進入http://127.0.0.1:5000/list/頁面,就能夠看到login的url了: 關注微信公衆號:自動化測試實戰,查看清晰排版,更多內容
相關文章
相關標籤/搜索