Щлравствуйте, как организовать приложение с blueprint чтобы избежать циклических импортов?
К примеру есть файл котороый сожердит код
from flask import Flask
from flask_mail import Mail
from flask_mongoengine import MongoEngine
from core.flask_core.modules.admin.admin_bp import admin
from core.flask_core.modules.main.main_bp import main
from core.flask_core.modules.registration.registration_bp import registration
from core.flask_core.modules.news.news_bp import news
from core.flask_core.modules.test.test_bp import test
from core.flask_core.modules.login.login_bp import login
from core.flask_core.modules.ajax.ajax_bp import ajax
mail = Mail()
db = MongoEngine()
def add_blueprints(app):
app.register_blueprint(admin, url_prefix='/admin')
app.register_blueprint(main, url_prefix='/')
app.register_blueprint(registration, url_prefix='/registration')
app.register_blueprint(news, url_prefix='/news')
app.register_blueprint(login, url_prefix='/login')
app.register_blueprint(test, url_prefix='/test')
app.register_blueprint(ajax, url_prefix='/ajax')
def create_app():
app = Flask(__name__)
mail.init_app(app)
app.config.from_object('config')
db.init_app(app)
add_blueprints(app=app)
return app
flask_app = create_app()
так вот, он импортирует блюпринты инизиализирует монго и фласк майл, и создает приложульку, а теперь вопрос, как только мы собираемся использовать монго в одном из блюпринтов мы получаем цикличесикй импорт, как этого избежать?