【问题标题】:django: invalid syntax path('details/<int:id>/', views.details, name='details')django:无效的语法路径('details/<int:id>/',views.details,name='details')
【发布时间】:2019-10-28 03:11:16
【问题描述】:

views.py 文件

def details(request, id):
post = Posts.objects.get(id=id)

context = {
    'post': post
}

return render(request, 'posts/details.html', context) 

urls.py 文件

from django.urls import path
from . import views

urlpatterns = [
   path('', views.index, name='index')
   path('details/<int:id>/', views.details, name='details')
]

path('details//', views.details, name='details') ^ SyntaxError: 无效语法

【问题讨论】:

  • 您忘记在第一个path(..) 的末尾添加一个逗号。

标签: django django-urls


【解决方案1】:
urlpatterns = [
   path('', views.index, name='index'),
   path('details/<int:id>/', views.details, name='details')
]

【讨论】:

    【解决方案2】:

    第一个路径语句后应该有一个逗号 也只是一个建议:

    我假设你的应用程序被称为博客,那么有两种方法可以解决上述问题:

    1. 要么声明一个函数,该函数从模型中自动生成一个 url,其中包括 slug id 等,要么

    2. 从html本身发出get请求,然后你不需要在detail之后指定,你可以直接从views.py中获取id的url

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 2021-08-29
      • 2022-12-05
      • 1970-01-01
      • 2020-04-07
      • 2019-02-01
      • 2013-09-30
      相关资源
      最近更新 更多