diff options
author | Jonah BrĂ¼chert <jbb@kaidan.im> | 2024-03-29 02:40:01 +0100 |
---|---|---|
committer | Jonah BrĂ¼chert <jbb@kaidan.im> | 2024-03-29 02:40:01 +0100 |
commit | 7d5b1e5b1f845534d565803412eef5916ce2824d (patch) | |
tree | 336921c8d9e7c38b713910f66b79bab876ebd8b8 | |
parent | 39230732099298b7f56c60b396949d8c0484e4dc (diff) | |
download | web-7d5b1e5b1f845534d565803412eef5916ce2824d.tar.gz web-7d5b1e5b1f845534d565803412eef5916ce2824d.tar.bz2 web-7d5b1e5b1f845534d565803412eef5916ce2824d.zip |
Improve exception handling
-rw-r--r-- | accounts/views/default/__init__.py | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/accounts/views/default/__init__.py b/accounts/views/default/__init__.py index 1639182..b5c9298 100644 --- a/accounts/views/default/__init__.py +++ b/accounts/views/default/__init__.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- - +import sys +import traceback from copy import deepcopy from flask import Blueprint from flask import redirect, render_template, request, flash, url_for @@ -235,13 +236,23 @@ def about(): } +@bp.app_errorhandler(Exception) +def exception_handler(e): + traceback.print_exception(e, file=sys.stderr) + return ( + render_template( + "error.html", + error={ + "message": "Interner Fehler", + "description": "Bitte melde uns den Fehler an " + + """<a href="mailto:spline@spline.de">spline@spline.de</a>.""", + }, + ), + 500, + ) + + @bp.app_errorhandler(403) @bp.app_errorhandler(404) -@bp.app_errorhandler(Exception) def errorhandler(e): - try: - code = e.code - except AttributeError: - code = 500 - - return render_template("error.html", error=e), code + return render_template("error.html", error=e), e.code |