Python 主键为的URL模式工作不正常

Python 主键为的URL模式工作不正常,python,python-3.x,django,django-urls,Python,Python 3.x,Django,Django Urls,需要URL中正则表达式的帮助。我正在构建一个不同的应用程序,而不是上面讲座中显示的应用程序。和我的讲座相关,学校是客户,学生是类别 在url.py文件中,从url_模式: url(r'^(?p[-\w]+)/$,views.DetailClientList.as\u view(),name='Detail\u Client\u List'), 这可以正确工作,地址为,其中cli1是客户机表主键(记录之一) 但是当我在url模式中放置下面的行时(而不是上面的) url(r'^/$,views.De

需要URL中正则表达式的帮助。我正在构建一个不同的应用程序,而不是上面讲座中显示的应用程序。和我的讲座相关,学校是客户,学生是类别

在url.py文件中,从url_模式:

url(r'^(?p[-\w]+)/$,views.DetailClientList.as\u view(),name='Detail\u Client\u List'),

这可以正确工作,地址为,其中cli1是客户机表主键(记录之一)

但是当我在url模式中放置下面的行时(而不是上面的)

url(r'^/$,views.DetailClientList.as\u view(),name='Detail\u Client\u List')

我得到以下错误(int:pk的相同错误):


找不到页面(404)

请求方法:获取

请求URL:


结果URL在上述两种情况下都是相同的。那么我在这里哪里出了问题。我猜这是url模式regex的问题(尽管结果url是相同的?)


请帮忙。蒂亚

您可能会误解

所以

从django.conf.url导入url
URL模式=[
网址(
r'^(?P[-\w]+)/$',
views.DetailClientList.as_view(),
name='Detail\客户\列表'
),
]
与以下内容相同

from django.urls import path

urlpatterns = [
    path(
        '<str:pk>',
        views.DetailClientList.as_view(),
        name='Detail_Client_List'
    )
]
从django.url导入路径
URL模式=[
路径(
'',
views.DetailClientList.as_view(),
name='Detail\客户\列表'
)
]

尝试使用
re\u path
而不是“url”

from django.urls import re_path, path
1.雷乌路
re_路径(r'^/$,views.DetailClientList.as_view(),name='Detail_Client_List')
2.路径
path('/',views.DetailClientList.as\u view(),name='Detail\u Client\u List')

使用'path'而不是'url',path('/',views.DetailClientList.as_view(),name='Detail\u Client_List')以上两种方法似乎都适用于
r'^(?P[-\w]+)/$'
。(仅供参考2.2.2中的django版本)您在
/
上遇到错误?。附言:在Endo追加斜杠,成功了!你能解释一下错误是什么,发生了什么吗?泰!在错误中,
/
是自动添加到末尾的,所以我认为这真的不是问题。您必须在末尾添加斜杠,或者必须在
settings.py
中写入
APPEND\u slash=True
。更多信息-谢谢。
from django.urls import re_path, path
re_path(r'^<str:pk>/$', views.DetailClientList.as_view(), name='Detail_Client_List')
path('<str:pk>/', views.DetailClientList.as_view(), name='Detail_Client_List')