不同的404页面取决于Django中的应用程序

时间:2010-02-22 16:37:30

标签: python django

我们正在使用Django开发一个包含多个应用程序的项目。它共享数据库,但它有几个应用程序针对不同的非常不同的用户。粗略地说,管理员和最终用户。每个应用程序的UI都非常不同。 我需要创建一个404错误页面,但似乎我只能为所有项目创建一个。我想创建不同的404模板,并能够根据用户要求的应用程序(URL)显示它们...

一般来说,显然无效的网址很容易,但在代码中还有其他方法可以启动例外,例如get_object_or_404次来电。

任何人都知道这样做的方法吗?

2 个答案:

答案 0 :(得分:4)

你完全可以只为整个应用创建一个404页面,这一点都不是真的。 The documentation解释了如何创建特定的404处理程序视图,当然可以查看request.path的值以查看请求的URL并呈现相关模板。

答案 1 :(得分:4)

Write a 404 view设置handler404,而不仅仅是模板。在该视图中,尝试从URL中显示您应该显示的404,然后渲染它。