繁体   English   中英

django url失败并带有可选参数

[英]django url fails with optional parameters

下面是我的django路由配置:

# main module
urlpatterns = patterns('',
    url(r'^api/', include('api.urls')),
)

# api module
urlpatterns = patterns('',
    url(r'^$', views.index, name='index'),
    url(r'^users/(?P<id>\d+)/?$', views.users, name='users')
)

我可以使用http://localhost:8000/api/users/1/访问特定用户(使用ID),但我无法访问用户列表: http://localhost:8000/api/users/

Using the URLconf defined in duck_rip.urls, Django tried these URL patterns, in this order:
^api/ ^$ [name='index']
^api/ ^users/(?P<id>\d+) [name='users']
The current URL, api/users/, didn't match any of these.

在此之前,我有这样的模块网址:

url(r'^users/$', views.users, name='users')

我可以访问http://localhost:8000/api/users/ 有人可以解释一下我犯的错误是什么吗?

只需将id设为可选:

url(r'^users/(?:(?P<id>\d+)/)?$', views.users, name='users')

在视图中:

def users(request, id=None)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM