summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonah BrĂ¼chert <jbb@kaidan.im>2024-03-29 02:40:01 +0100
committerJonah BrĂ¼chert <jbb@kaidan.im>2024-03-29 02:40:01 +0100
commit7d5b1e5b1f845534d565803412eef5916ce2824d (patch)
tree336921c8d9e7c38b713910f66b79bab876ebd8b8
parent39230732099298b7f56c60b396949d8c0484e4dc (diff)
downloadweb-7d5b1e5b1f845534d565803412eef5916ce2824d.tar.gz
web-7d5b1e5b1f845534d565803412eef5916ce2824d.tar.bz2
web-7d5b1e5b1f845534d565803412eef5916ce2824d.zip
Improve exception handling
-rw-r--r--accounts/views/default/__init__.py27
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