Flask | RuntimeError: No application found. Either work inside a view function or push an application context.

问题在于调用时找不到flask的app,就算用current_app,也会在不被flask管理的模块中调用时遇到此错误。

解决方法

使用flask_apscheduler模块

1
pip install flask-apscheduler

然后新建一个APScheduler对象

1
2
3
from flask_apscheduler import APScheduler

scheduler = APScheduler()

后续遇到需要使用app的时候,按如下调用:

1
2
3
from application.scheduler import scheduler

app = scheduler.app

其中import的位置自己改。