我在将URL路由到Django中的视图时遇到了问题。具体来说,我使用带有模式的URL:
url(r'^(?P<id>[A-Za-z0-9\ ]+)/(?P<subid>[A-Za-z0-9\ ]+)/managetables$', views.compiledata, name='compiledata')
示例网址为My data/current/managetables
。我检查了正则表达式返回www.pyregex.com上预期的捕获组(example)
但是,实际访问url不会导致调用视图。最重要的是,它适用于高度相似的网址:
url(r'^(?P<id>[A-Za-z0-9\ ]+)/(?P<subid>[A-Za-z0-9\ ]+)/managetab$', views.compiledata, name='compiledata')
如果我访问My data/current/managetab
,视图会按预期调用。另外,在urlconf中添加“/”也可以 - 但我不清楚为什么,即:
url(r'^(?P<id>[A-Za-z0-9\ ]+)/(?P<subid>[A-Za-z0-9\ ]+)/managetables/$', views.compiledata, name='compiledata')
并访问My data/current/managetables
会导致重定向到调用该视图的My data/current/managetables/
。
我很欣赏如何解决这个问题的任何提示。
答案 0 :(得分:0)
好吧,虽然这个问题确实仅在两台机器中的一台机器上出现,但暗示网址的暗示解决了这个问题。对于任何遇到类似问题的人,可以在此处找到有关slugify的更多信息: Tango with Django's Chapter 7,以及Django Documentation。