如何在Django中获取410 http状态代码的错误页面?

时间:2012-05-04 13:41:18

标签: django http redirect http-error http-status-code-410

我有一些不再有效的网址重定向,所以我需要它们返回410.因为网址来自网站的旧版本(系统完全不同),我只需将它们放入重定向应用中更容易编辑。然而,410"重定向"除了状态代码之外不会返回任何其他内容 - 通常显示的页面只是空的。

如何向用户显示有意义的内容(例如"页面不再存在")?如果有一些模板类似于404错误的模板,那将会很不错。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

只需将响应的状态代码更改为410。

from django.shortcuts import render

def my_view(request):
    context = {}
    return render(request, '410.html', context, status=410)

render快捷方式上的文档:https://docs.djangoproject.com/en/1.3/topics/http/shortcuts/#render

您还可以创建异常Http410和中间件来捕获此异常以呈现410页。这就是Django经常处理404页面的方式。