gpt4 book ai didi

python - TemplateView 出现 Django 404 错误

转载 作者:太空宇宙 更新时间:2023-11-04 09:57:10 25 4
gpt4 key购买 nike

我在应用程序中有 url,当我转到 article-report url 时,我看到了 django 错误页面有文章的 url,但是没有文章报告的 url。

main.urls.py

from rest_framework import routers
from main.views import (ArticleViewSet)
from django.views.generic import TemplateView

router = routers.DefaultRouter()
router.register(r'article-report', TemplateView.as_view(template_name = 'report.html'),'report')
router.register(r'article', ArticleViewSet)
urlpatterns = router.urls

settings.py 的一部分

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

终端收到消息

[26/Jul/2017 14:22:14] "GET /article-report HTTP/1.1" 404 5777

附言Pycharm 在导入行中为 django、TemplateView 和 rest_framework 加下划线。但在其他例子中没关系

最佳答案

您应该将 TemplateView 作为 url() 包含在 urlpatterns 中,而不是尝试将其注册到路由器。

router = routers.DefaultRouter()
router.register(r'article', ArticleViewSet)

urlpatterns = [
url(r'article-report', TemplateView.as_view(template_name='report.html'), name='report') # note kwarg name='report' instead of arg 'report'
]

urlpatterns += router.urls

关于python - TemplateView 出现 Django 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45329585/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com