基于django类的视图自定义404和500

基于django类的视图自定义404和500,django,django-templates,django-views,Django,Django Templates,Django Views,我正在尝试学习django,我有一个小型的测试服务器(不是devel),在那里我试图托管一个小型博客站点(类似于官方教程) 我想要自定义404和500视图,因此,我在url.py中有以下内容: from mystuff.views import Template404View, Template500View handler404 = Template404View.as_view() handler500 = Template500View.as_view() 在我的视图.py中,我有以下内

我正在尝试学习django,我有一个小型的测试服务器(不是devel),在那里我试图托管一个小型博客站点(类似于官方教程)

我想要自定义404和500视图,因此,我在
url.py中有以下内容:

from mystuff.views import Template404View, Template500View
handler404 = Template404View.as_view()
handler500 = Template500View.as_view()
在我的
视图.py
中,我有以下内容:

class Template404View(TemplateView):
    template_name = "404.html"

class Template500View(TemplateView):
    template_name = "500.html"
其中,
404.html
500.html
存在于我的
site\u模板
目录中

然而,当我在我的测试服务器上托管它时,我看到的不是400或500个自定义页面,而是
内部服务器错误

我试着查找类似的问题,我看到了答案,但这似乎没有帮助


任何建议都将不胜感激……谢谢。

您正在从mystuff导入自定义视图,而这些视图是在views.py中定义的。尝试从my stuff.views导入它们


另外,设置DEBUG=True可能会给您一些提示,即您正在从mystuff导入自定义视图,而这些视图是在views.py中定义的。尝试从my stuff.views导入它们


另外,设置DEBUG=True可能会给您一些线索

我今天遇到了一个类似的问题:问题是我的500页中有德语Umlauts,在呈现500页时,我的apache出现了一个内部服务器错误,因此引发了apache 200错误。因此,请检查您的500页并单独测试,看看在调用时是否正确显示


但是既然您正在学习教程:为什么不采用中描述的方法?只需编写您的500.html文件并将其放入my_应用程序/模板中。这很好,不需要额外的视图或URL。

我今天遇到了类似的问题:问题是我的500页中有德语UMLAUT,在呈现500页时,我的apache出现了内部服务器错误,因此引发了apache 200错误。因此,请检查您的500页并单独测试,看看在调用时是否正确显示


但是既然您正在学习教程:为什么不采用中描述的方法?只需编写您的500.html文件并将其放入my_应用程序/模板中。这很好,不需要额外的视图或URL。

对不起,我把
.views
打错了-我现在已经更正了。我还没有试过DEBUG=True,但是我想这只会抛出默认的django 404,这不是我想要的。如果你收到一个内部服务器错误(500),设置'deug=True`)会告诉你更多关于错误原因的信息。可能是以前的导入错误或类似错误,因此您无法提供正确的500.html。很抱歉,我输入了
.views
错别字-我现在已经更正了。我还没有试过DEBUG=True,但是我想这只会抛出默认的django 404,这不是我想要的。如果你收到一个内部服务器错误(500),设置'deug=True`)会告诉你更多关于错误原因的信息。可能错误出现在以前的某个导入或类似操作中,因此无法为正确的500.html提供服务器。