From 97fc38f9193ba7d0d47616aae7fc71f5d58f013a Mon Sep 17 00:00:00 2001 From: krateng Date: Thu, 26 May 2022 14:56:04 +0200 Subject: [PATCH] Graceful handling of missing templates --- maloja/server.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/maloja/server.py b/maloja/server.py index cf96a92..ce3595c 100644 --- a/maloja/server.py +++ b/maloja/server.py @@ -10,6 +10,7 @@ import time # server stuff from bottle import Bottle, static_file, request, response, FormsDict, redirect, BaseRequest, abort import waitress +from jinja2.exceptions import TemplateNotFound # doreah toolkit from doreah.logging import log @@ -212,10 +213,11 @@ def jinja_page(name): "_urikeys":keys, #temporary! } loc_context["filterkeys"], loc_context["limitkeys"], loc_context["delimitkeys"], loc_context["amountkeys"], loc_context["specialkeys"] = uri_to_internal(keys) - - template = jinja_environment.get_template(name + '.jinja') try: + template = jinja_environment.get_template(name + '.jinja') res = template.render(**loc_context) + except TemplateNotFound: + abort(404,f"Not found: '{name}'") except (ValueError, IndexError): abort(404,"This Artist or Track does not exist")