Django:当数据库关闭/无法连接时如何处理异常?

时间:2019-02-14 14:19:36

标签: python django oracle

我们正在开发的Django应用程序出现问题。有时,数据库崩溃/连接过多,等等,并且Django不断引发异常。

我们如何捕获这些异常并将用户重定向到错误页面?

1 个答案:

答案 0 :(得分:0)

如果要显示错误500的自定义页面,然后将异常保存在日志中,则以下步骤可能会有所帮助:

  1. 要查看异常,可以使用here中的日志记录设置。
  2. 在您的应用error_500.html文件夹中创建一个新的HTML文件templates/errors/
  3. 将视图功能error_500添加到应用程序的views.py

    def error_500(请求):     返回render(request,'errors / error_500.html')

  4. 添加到urls.py的路由(无论是主路由还是应用程序中的路由)。例如

    从django.conf.urls

    导入handler404,handler500 从YOURAPP导入视图作为yourapp_views

    handler404 = yourapp_views.error_404 handler500 = yourapp_views.error_500

从现在开始,在 production 模式下(DEBUG = 0,设置了ALLOWED_HOSTS,以WSGI运行,等等),当发生异常时,Django应该将error_500.html的内容显示为Error 500页面。您将在系统日志中看到更多信息。