hehey-hrouter url 路由器介绍及使用

hehey-hrouter 是一款 Python 路由工具组件,它模仿了 Yii2 的路由规则。该工具提供了灵活的路由配置选项,如 URI 请求地址规则、action 操作地址规则等,并支持通过装饰器注册路由规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

hehey-hrouter

介绍

hehey-hrouter 是一个python 路由工具组件,仿Yii2 路由规则

下载

https://gitee.com/chinahehe/hehey-hrouter

基本示例


from hrouter.RouterManager import RouterManager,reg_route_rule

router = RouterManager({
    'router':{
        #'clazz': 'hehe.core.hrouter.easy.EasyRouter.EasyRouter',# url 路由器,不填,则默认,一般不填

        #'routerRequest':'WebRouterRequest',# 路由规则
        # url 路由规则定义
        'rules':[
            #uri 请求地址规则,action 操作地址规则,method 请求方法,clazz 规则类,用于扩展
            #{'uri':'<news:\w+>/<id:\d+>','action':'<news>/index','method'='get','clazz'=>''},
            #{'uri':'<controller:\w+>/<action:\w+>','action':'<controller>/<action>'},

            {'uri':'<news:\w+>/<id:\d+>.html','action':'<news>/detail'}
        ],

        # action 规则配置
        'actionRule':{
            'filter': ['site', 'controllers', 'modules'],# 自动过滤包路径的关键词
            'suffix': ['Action', 'Controller'],# action 后缀 ['action 方法后缀','Controller 控制器类后缀']
            'func':'' # action 地址处理方法
        }
    }
});



# 注册路由规则-函数
@reg_route_rule('user/getuserlist')
def getuser(self):

    print("pass")

    return "<h1>您好</h1>"

# 注册路由规则-类方法
class NewsController:

    @reg_route_rule('news/list')
    def getindex(self):

        print("pass")

        return "<h1>您好</h1>"

    # 资讯详情
    def detail(self):
        print("pass")

        return "<h1>您好</h1>"

    pass


# 创建路由request 对象
routerRequest = router.runRoute({'PATH_INFO':"news/list"});
# 获取解析后的路由地址
routeUrl = routerRequest.getRouteUrl() # 获取路由解析后url地址,比如news/index
routeParams = routerRequest.getRouteParams();# 获取路由的解析后参数{"id":1}
# route = news/getindex
print(routeUrl)


# 生成地址
url = router.buidlUrl('news/getindex',{"id":"10"})
# url: news/list?id=10

url = router.buidlUrl('getuser',{"id":"10"})
# url: user/getuserlist?id=10

url = router.buidlUrl('news/detail',{"id":"10"})

# url: news/10.html

print(url)


  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值