這篇文章將為大家詳細(xì)講解有關(guān)怎么用Flask中的url_for(),文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的德令哈網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
在Flask開發(fā)中常會url_for()函數(shù),這個url_for()函數(shù)是用于構(gòu)建指定函數(shù)的URL,而且url_for操作對象是函數(shù),而不是route里的路徑。
如果route和函數(shù)名不一樣而導(dǎo)致使用url_for()錯誤,千萬不要去route找錯誤。
例如下面的代碼:
from flask import Flask, url_for app = Flask(\__name__) @app.route('/') def index(): pass @app.route('/login') def LOGIN(): pass with app.test_request_context(): print(url_for('index')) print(url_for('login'))
print(url_for('index'))沒有報錯,就是一個反斜杠;print(url_for('login'))報錯,拋出BuildError異常:
/ Traceback (most recent call last): File “<\pyshell#12>”, line 3, in print(url_for(‘login’)) File “C:\Python35\lib\site-packages\flask\helpers.py”, line 332, in url_for return appctx.app.handle_url_build_error(error, endpoint, values) File “C:\Python35\lib\site-packages\flask\app.py”, line 1811, in handle_url_build_error reraise(exc_type, exc_value, tb) File “C:\Python35\lib\site-packages\flask_compat.py”, line 33, in reraise raise value File “C:\Python35\lib\site-packages\flask\helpers.py”, line 322, in url_for force_external=external) File “C:\Python35\lib\site-packages\werkzeug\routing.py”, line 1758, in build raise BuildError(endpoint, values, method, self) werkzeug.routing.BuildError: Could not build url for endpoint ‘login’. Did you mean ‘index’ instead?
把login修改為LOGIN:
with app.test_request_context(): print(url_for('index')) print(url_for('LOGIN'))
打印正常:
/ /login
參數(shù)
url_for()也可以附帶一些參數(shù),比如想要完整的URL,可以設(shè)置_external為Ture:
url_for('.static',_external=True,filename='pic/test.png')
這樣返回的url是http://localhost/static/pic/test.png
參數(shù)示例:
endpoint
URL的端點(diǎn)(即函數(shù)的名字)
values
URL的變量參數(shù)
_external
如果設(shè)置為True,則生成一個絕對路徑URL
_scheme
一個字符串指定所需的URL方案。_external參數(shù)必須設(shè)置為True,不然會拋出ValueError。
_anchor
如果設(shè)置了這個則給URL添加一個mao
_method
如果設(shè)置這個則顯示地調(diào)用這個HTTP方法
關(guān)于怎么用Flask中的url_for()就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文題目:怎么用Flask中的url_for()
網(wǎng)頁路徑:http://m.rwnh.cn/article2/ggddic.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、App設(shè)計、企業(yè)網(wǎng)站制作、小程序開發(fā)、關(guān)鍵詞優(yōu)化、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)