我有一个名为 "vocab "的应用程序,到目前为止,它包含一个CreateView和一个ListView。在我的项目urls.py文件中,我有以下内容。
urlpatterns = [
path('admin/', admin.site.urls),
path('',views.HomePage.as_view(),name='home'),
re_path(r"^accounts/", include("accounts.urls", namespace="accounts")),
re_path(r"^accounts/", include("django.contrib.auth.urls")),
re_path(r"^logout/$", views.LogOutPage.as_view(), name="logout"),
re_path(r"^vocab/", include("vocab.urls", namespace="vocab")),
]
然后,在我的app urls.py文件中,我有以下内容。
urlpatterns = [
path('list/', views.WordList.as_view(), name="list"),
path("home/",views.VocabHome.as_view(),name='home'),
path("create/", views.CreateWord.as_view(), name="create"),
]
在我的html模板中,我有指向这些视图的链接。主页和列表视图可以使用,但当我点击 "创建 "链接时,它将我带到 "列表"。在命令行中,我可以看到它访问的是vocablist,而不是vocabcreate。我知道创建视图是有效的,因为如果我手动输入它,它就会进入那里。如果我删除其他视图,它也能正常工作。所以当有其他视图时,django找不到 "create "视图。我已经尽力去解决这个问题,确保所有的路径都是唯一的,我也试过使用正则表达式,但还是不行。如果有任何帮助,我将非常感激
我发现了一个错误...
我的html中少了一个表单关闭标签。这导致我的第二个表单(以及链接)无效。