这是我的404视图:
function login_error_override()
{
return 'Incorrect login details.';
}
add_filter('login_errors', 'login_error_override');
似乎此代码产生了500个错误,但在运行django开发服务器的终端中没有看到任何错误输出。
我必须设置def handler_404(request):
response = render(request, '404.html')
response.status_code = 404
return response
来查看是否将呈现我的自定义404页面,它似乎不起作用,但会产生500错误。
更新#1:
我尝试将网址添加到我的网址列表中,例如DEBUG = False
,然后在浏览器中访问path('404/', my_views.my_404_view)
,模板加载完毕,没有错误出现。
更新#2:
我还尝试添加以下代码,以在/404
设置为DEBUG
时在终端中启用详细的日志输出。
False
我在终端中看到的就是这个:
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': { 'console': {
'class': 'logging.StreamHandler',
}, 'file': {
'level': 'DEBUG',
'class': 'logging.FileHandler',
'filename': 'log.django',
},
},
'loggers': {
'django': {
'handlers': ['console','file'],
'level': os.getenv('DJANGO_LOG_LEVEL', 'DEBUG'),
},
},
}
答案 0 :(得分:0)
似乎我的函数未接受所需的参数:
我更改了此内容
def handler_404(request):
对此:
def handler_404(request, exception, template_name='404.html'):