我将烧瓶的错误处理程序分成了一个单独的模块,位于“ app.py”目录下的“ error_handlers.py”中。我尝试将error_handlers模块导入到应用模块中,但我不断收到ImportError:
from app import app ImportError: cannot import name 'app' from partially initialized module 'app' (most likely due to a circular import)
我查找了类似的问题并添加了蓝图,但是我仍然遇到相同的错误。请问我做错了什么吗?我的代码如下:
app.py
import os
from error_handler import *
from flask import Flask, flash, jsonify, redirect, render_template, request, session, abort
from flask_session import Session
from tempfile import mkdtemp
from helpers import lookup, login_required
# Configure application
app = Flask(__name__)
app.register_blueprint(error_handlers.blueprint)
...
error_handlers.py
from app import app
from flask import render_template, Blueprint
blueprint = Blueprint('error_handlers', __name__)
@blueprint.app_errorhandler(404)
def page_not_found(e):
return render_template("errors/404.html")
答案 0 :(得分:1)
嘿,您得到Circular Import Error
,所以请更改文件名,否则函数名必须与文件名不同。
这样,编译器就不会混淆要调用的函数。