小编Lee*_*ung的帖子

Flask app.before_request 在移动到其他模块时不起作用

这些天我正在学习 Flask。

一开始,我把整个代码写在main.py.

一切正常。但是@app.before_request在 中运行良好main.py,但在将此代码移动到单独的模块后停止工作。

我花了很多时间来了解原因,但甚至还没有想象。:(

main.py 在这儿

app = Flask(__name__)
app.config.from_object(settings)
db = SQLAlchemy()


@app.before_request
def working():
    from user.models import User
    print '### called in main ###'
    g.user = User.get_by_session()


if __name__ == '__main__':
    db.init_app(app)
    app.register_blueprint(frontend.views.blueprint)
    app.register_blueprint(user.views.blueprint)
    import frontend.helpers
    app.run()
Run Code Online (Sandbox Code Playgroud)

frontend/helpers.py

from flask import g
from main import app
from user.models import User

@app.before_request
def not_working():
    print '### called in frontend.helpers ###'
    g.user = User.get_by_session()
Run Code Online (Sandbox Code Playgroud)

结果显示@app.before_requestfrontend/helpers.py没有被调用。

127.0.0.1 - …
Run Code Online (Sandbox Code Playgroud)

python flask

2
推荐指数
1
解决办法
1996
查看次数

标签 统计

flask ×1

python ×1