我已经定义了自己的404处理程序,但似乎在我使用它时,我的网址正在改变。 我在我的root urls.py中定义了404处理程序,这是代码的一部分
def page_not_found(request):
if request.session.has_key('loggedin'):
return HttpResponseNotFound(login_404)
path = request.path
if path.startswith('/path'):
return HttpResponseNotFound(non_loign_404)
handler404 = page_not_found
其中login_404和non_login_404是字符串。我呈现并保留它们以便更快地访问。
根据我的应用程序中的上下文,我有不同的404页面。
来解决我的实际问题:
假设我有网址 / a / b 启用自定义404处理程序后,网址将变为 / a / a / b 如果我有 / path / x ,则会变为 / path / path / x
有什么不对的,请建议我。提前谢谢。
修改
直到我第一次遇到404每个网址才能得到正确解决,但从第404页开始,每个网址都会被解析为404.