Browse Source

feat: 错误页面

SongZihuan 2 years ago
parent
commit
f9f9696a99
2 changed files with 25 additions and 12 deletions
  1. 14 0
      templates/error.html
  2. 11 12
      web/__init__.py

+ 14 - 0
templates/error.html

@@ -0,0 +1,14 @@
+{% extends "base.html" %}
+
+{% block title %} 创建 {% endblock %}
+
+{% block content %}
+    <section class="container mt-3">
+        <div class="row">
+            <div class="col-12 text-center">
+                <p> <strong> {{ error_info }} </strong> </p>
+                <a class="btn btn-warning" href="{{ url_for("base.index_page") }}"> 回到主页 </a>
+            </div>
+        </div>
+    </section>
+{% endblock %}

+ 11 - 12
web/__init__.py

@@ -1,4 +1,4 @@
-from flask import Flask
+from flask import Flask, render_template, Response
 from flask.logging import default_handler
 import logging
 import logging.handlers
@@ -69,14 +69,13 @@ class HuamMailFlask(Flask):
         self.config.update(conf)
 
     def error_page(self, error_code):
-        # for i in error_code:
-        #     def create_error_handle(status):  # 创建一个 status 变量给 error_handle
-        #         def error_handle(e):
-        #             Logger.print_load_page_log(status)
-        #             data = render_template('error.html', error_code=status, error_info=e)
-        #             return Response(response=data, status=status)
-        #
-        #         return error_handle
-        #
-        #     self.errorhandler(i)(create_error_handle(i))
-        pass
+        for i in error_code:
+            def create_error_handle(status):  # 创建一个 status 变量给 error_handle
+                def error_handle(e):
+                    Logger.print_load_page_log(status)
+                    data = render_template('error.html', error_code=status, error_info=e)
+                    return Response(response=data, status=status)
+
+                return error_handle
+
+            self.errorhandler(i)(create_error_handle(i))