Django URL模式不起作用

时间:2018-08-23 14:59:29

标签: python django django-urls

我的urls.py这样包含:

urlpatterns = [
    path('files/', include('files.urls')),
]

然后在files/urls.py中输入:

urlpatterns = [
    path('', views.index, name='index'),
    path(r'(?P<name>[a-z]+)', views.check, name='check')
]

因此,我假设example.com/files工作时,example.com/files/somename也应该工作,但事实并非如此:

  

Django使用example.urls中定义的URLconf,尝试了这些URL   模式,顺序如下:

[name='index']
files/ [name='index']
files/ (?P<name>[a-z]+) [name='check']
     

当前路径,文件/别名,与任何这些都不匹配。

我在这里想念什么?

1 个答案:

答案 0 :(得分:3)

您不需要将regexp与path方法一起使用。相反,您只需指定str作为参数类型:

path('<str:name>/', views.check, name='check')

如果要使用正则表达式,请使用re_path

re_path(r'(?P<name>[a-z]+)', views.check, name='check')