webapp2路由中的非reedy匹配?

2024-05-13 21:35:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发的Python应用程序中有两条路由,我似乎无法正确地进行匹配。路线如下所示:

webapp2.Route('/(.*?)/(.*?)', grouploader.Loader),
webapp2.Route(r'/edit/(.*?)/(.*?)', handler='grouploader.Editor'),

我希望像/a/b这样的URL转到第一个,/edit/a/b转到第二个。显然这里的匹配是贪婪的,因为第一个规则总是匹配的,返回两个值的"edit/a""b"。是有办法让这一切顺利进行,还是我找错人了?你知道吗


Tags: 应用程序url规则loader路线editrouteeditor
1条回答
网友
1楼 · 发布于 2024-05-13 21:35:21

反转路由,不要使用延迟匹配,您有另一个更好的工具:

webapp2.Route('/edit/([^/]+)/([^/]+)', handler = 'grouploader.Editor');
webapp2.Route('/([^/]+)/([^/]+)', grouploader.Loader);

相关问题 更多 >