Python flask和flask_登录-组织代码

Python flask和flask_登录-组织代码,python,flask,flask-login,Python,Flask,Flask Login,我目前正在使用flask和flask_登录编写一个简单的web应用程序,但由于代码组织问题而陷入困境 import flask import flask_login app = flask.Flask(__name__) login_manager = flask_login.LoginManager() login_manager.init_app(app) 以上工作。出现这个问题是因为我想将身份验证相关代码与主应用程序代码分开。换句话说,我希望my_auth.py导入flask\u登录

我目前正在使用flask和flask_登录编写一个简单的web应用程序,但由于代码组织问题而陷入困境

import flask
import flask_login

app = flask.Flask(__name__)

login_manager = flask_login.LoginManager()
login_manager.init_app(app)
以上工作。出现这个问题是因为我想将身份验证相关代码与主应用程序代码分开。换句话说,我希望
my_auth.py
导入
flask\u登录名并初始化
login\u管理器
,我希望
main.py
导入my_auth
,而不必导入
flask\u登录名

问题是
login\u manager.init\u app(app)
需要传入主烧瓶
app
,而这种清晰的分离似乎很困难。因此,我的问题是:

  • 我所要求的是可能的吗?如果是,怎么做
  • 如果我所要求的是不可能的,那么目前组织此类代码的最佳实践是什么

  • 如果
    main.py
    my_auth.py
    位于同一目录中,则可以执行以下操作:

    my_auth.py

    import flask_login
    
    login_manager = flask_login.LoginManager()
    
    from flask import Flask
    from my_auth import login_manager
    
    app = Flask(__name__)
    login_manager.init_app(app)
    
    main.py

    import flask_login
    
    login_manager = flask_login.LoginManager()
    
    from flask import Flask
    from my_auth import login_manager
    
    app = Flask(__name__)
    login_manager.init_app(app)
    

    你能提供你的web应用文件夹结构吗?…啊,我意识到我问错了问题。不过,你确实回答了上述问题,所以我会接受。谢谢。@wooke919…你可以通过编辑你的问题来更详细地阐明你的目标。不,这会使这个问题变得太复杂。将提出另一个更切题的问题。也许你也能帮我做这个阿尔吉蒂,说吧……)