python之routes入門


一、入門

from routes import Mapper

map = Mapper()  # 創建一個mapper()路由實例對象

# connect注冊路由信息
# 路由名稱'zbj', 路徑是 '/clj', controller為 'main', action為 'index'
# 匹配到此條路由URL的請求:交由controller類處理,請求預調用的函數index
map.connect('zbj', '/clj', controller='main', action='index')

# 創建好路由條目后,即可進行匹配,調用match方法,匹配路徑 /clj
result = map.match('/clj')

# 輸出匹配結果。匹配上之后,匹配結果是一個字典,保存的是后續調用的類和類的方法。
# 如果匹配不上的話,就會輸出 None。
print(result)  # {'controller': 'main', 'action': 'index'}

 

二、無名路由

from routes import Mapper

map = Mapper()

# 注冊一個無名路由,action可以從匹配路由中獲得
map.connect('/home/{action}/{id}', controller='home')
result = map.match('/home/index/200')  #
print(result)  # {'action': 'index', 'id': '200', 'controller': 'home'}

# { }用來指定里面匹配的字段是什么, : 表示的是匹配字段的格式
map.connect('/home/{action:index|jia}/{id:\d+}', controller='home')
res = map.match('/home/jia/200')
print(res)  # {'action': 'jia', 'id': '200', 'controller': 'home'}

 

三、conditions限制

from routes import Mapper

map = Mapper()

# 只匹配GET、HEAD請求。
map.connect('/user/list', controller='user', action='list',
            conditions={'method': ['GET', 'HEAD']})

result = map.match('/user/list')
print(result)  # {'action': 'list', 'controller': 'user'}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM