Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python URL中的id(编号)路径_Python_Django_Url - Fatal编程技术网

Python URL中的id(编号)路径

Python URL中的id(编号)路径,python,django,url,Python,Django,Url,我是django的新手 在urls.py中,我像这样设置路径。我试图创建一个包含URL的页面:localhost:8000/topics/1/ urlpatterns = [ path('topics/(?P<topic_id>\d+)/', views.topic, name='topic'), ] 输入localhost:8000/topics/1/时出现错误404 主题/(?p\d+)/[name='topic'] 当前路径topics/1/与这些路径中的任何一个都不

我是django的新手

在urls.py中,我像这样设置路径。我试图创建一个包含URL的页面:localhost:8000/topics/1/

urlpatterns = [
    path('topics/(?P<topic_id>\d+)/', views.topic, name='topic'),
]
输入localhost:8000/topics/1/时出现错误404

主题/(?p\d+)/[name='topic'] 当前路径topics/1/与这些路径中的任何一个都不匹配。

但正确的URL是:localhost:8000/topics/(%3FP1%5Cd+)/

URL中的路径有问题吗?或者有什么问题吗?

试试这个

urlpatterns = [
    path('topics/<topic_id>/', views.topic, name='topic'),
]

谢谢,它很管用!但我的是旧版本,所以它不再工作?我在阅读一本书中的教程。你使用的是哪个Django版本?我的Django版本是2.1.4。我的意思是“topics/(?P\d+)/”形式在新版本中不再适用了吗?
urlpatterns = [
    path('topics/<topic_id>/', views.topic, name='topic'),
]
urlpatterns = [
    path('topics/<int:topic_id>/', views.topic, name='topic'),
]
from django.urls import re_path

urlpatterns = [
    re_path('topics/(?P<topic_id>\d+)/', views.topic, name='topic'),
]