flask裡面本身支援字串,浮點型,整形以及路徑,其實這些已經足夠用了,但是如果你就是要想它支援正則,也是可以的,我們可以擴充套件一下它,使他也支援正則。
from flask import flask, views, url_forfrom werkzeug.routing import baseconverter
#1.寫regexconverter裝換器類
class
regexconverter
(baseconverter):
""" 自定義url匹配正規表示式
"""def__init__
(self, map, regex):
super(regexconverter, self).__init__(map)
self.regex = regex
defto_python
(self, value):
""" 路由匹配時,匹配成功後傳遞給檢視函式中引數的值
:param value:
:return:
"""return value
defto_url
(self, value):
""" 使用url_for反向生成url時,傳遞的引數經過該方法處理,返回的值用於生成url中的引數
:param value:
:return:
"""val = super(regexconverter, self).to_url(value)
return val
#2.將轉換器類新增到flask的預設路由系統字典中
#正則匹配成功後進入檢視函式之前會呼叫to_python函式,進行二次處理
defindex
(nid):
print(nid)
return
'index'
if __name__ == '__main__':
flask框架(六) 實現支援正則的路由
一 預設路由 user post post post login methods get post 常用路由系統有以上五種,所有的路由系統都是基於一下對應關係來處理 default converters 二 寫轉換器類,支援正則路由 class regexconverter baseconverte...
Dubbo原始碼分析之擴充套件機制(3)
獲取到自適應型別後進行例項化並且進行屬性注入,這裡會判斷物件工廠是否為空,當型別type為extensionfactory時會為空,也就是不會注入屬性,它的自適應型別為adaptiveextensionfactory,所以其他型別的objectfactory就是adaptiveextensionfa...
Spring原始碼學習之容器的功能擴充套件
我們都站在巨人的肩膀上 宣告 參考 spring原始碼深度解析 beanfactory bf new xmlbeanfactory new classpathresource beanfactorytest.xml 2.設定配置路徑public void setconfiglocations str...