这是我的views.py
def handler_404(request):
return render(request, '404.html', status=404)
def handler_500(request):
return render(request, '500.html', status=404)
这是我的urls.py
from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from finish.views import handler_404,handler_500
from django.conf.urls import (
handler400,
handler403,
handler404,
handler500
)
urlpatterns = [
path('', include("scrap.urls")),
path('', include("details.urls")),
path('', include("finalize.urls")),
path('', include("finish.urls")),
] + static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)
handler404 = handler_404
handler500 = handler_500
当我键入一些不存在的url时,它会出现“服务器错误(500)”,而不是“页面找不到(404)”错误。
请看看这个。
发布于 2020-05-06 16:30:27
老问题,但我会将您重定向到Nico的answer。我花了太多的时间去寻找它。
我正在运行django 3.0.2,总结一下我是这样做的:prodject urls.py
from django.conf.urls import url, include, handler404
import app.views
urlpatterns = [
.
.
.
]
handler404 = app.views.error_404
应用- views.py
.
.
.
def error_404(request, exception):
return render(request,'app/404.html', status = 404)
在阅读了许多教程之后,我发现它们中的大多数都忽略了例外
然后在应用程序/模板/应用程序文件夹中放置404.html
希望有人觉得这个有用..
https://stackoverflow.com/questions/53025630
复制相似问题