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'}
复制代码

 

posted @   我用python写Bug  阅读(1523)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示