91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用Flask中的url_for()

發布時間:2020-08-25 09:24:38 來源:億速云 閱讀:267 作者:Leah 欄目:編程語言

這篇文章將為大家詳細講解有關怎么用Flask中的url_for(),文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

在Flask開發中常會url_for()函數,這個url_for()函數是用于構建指定函數的URL,而且url_for操作對象是函數,而不是route里的路徑。

如果route和函數名不一樣而導致使用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

參數

url_for()也可以附帶一些參數,比如想要完整的URL,可以設置_external為Ture:

url_for('.static',_external=True,filename='pic/test.png')

這樣返回的url是http://localhost/static/pic/test.png

參數示例:

endpoint 

URL的端點(即函數的名字)

values 

URL的變量參數

_external 

如果設置為True,則生成一個絕對路徑URL

_scheme 

一個字符串指定所需的URL方案。_external參數必須設置為True,不然會拋出ValueError。

_anchor 

如果設置了這個則給URL添加一個mao

_method 

如果設置這個則顯示地調用這個HTTP方法

關于怎么用Flask中的url_for()就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永胜县| 苍南县| 封丘县| 巍山| 靖西县| 文水县| 鲁甸县| 溧水县| 黑水县| 乌海市| 双鸭山市| 蕉岭县| 金乡县| 丰原市| 临朐县| 阿巴嘎旗| 宁津县| 双流县| 宁都县| 周口市| 海门市| 前郭尔| 马关县| 沈丘县| 栖霞市| 阳曲县| 迁西县| 礼泉县| 平乐县| 苏尼特右旗| 西吉县| 常州市| 龙门县| 乌鲁木齐县| 德庆县| 时尚| 郧西县| 蓬安县| 淮安市| 当阳市| 红河县|