1

我正在尝试学习 django,但讲师使用 django 1.XX 到目前为止,我已经能够将内容更新到 Django 3.XX 以使其正常工作。但我现在被困住了。

具体来说,在下面的 urlpatterns 代码中:

urlpatterns = [
    path('',views.SchoolListView.as_view(),name='list'),
    path('<int:pk>/',views.SchoolDetailView.as_view(),name='detail')
]

第一条路径有效。第二个没有。当我点击 url 时没有任何反应。没有错误代码,什么都没有。我认为语法有问题?Django3有什么不同吗?

我检查了文档,没有发现任何错误。

谢谢你。

4

2 回答 2

0

例如:

path ('',views.index , name='index')

对于您的代码:

path('',views.SchoolListView,name='list')
于 2020-01-25T20:44:16.127 回答
0

第二种模式是 djangos 通用视图的一部分。通用视图抽象了通用模式,以至于您甚至不需要编写 Python 代码来编写应用程序。

path('<int:pk>/',views.SchoolDetailView.as_view(),name='detail')

这里pk代表主键。检查您在数据库中是否有带有主键的数据。

或者,如果你不想使用通用方法,你可以使用这个

path('<int:school_id>/‘, views. SchoolListView, name='schoollist')

,其中school_id(根据您的模型可以是其他名称,在db中验证)应该是django创建的数据库中的主键。

于 2020-01-26T05:17:03.770 回答