python - Apscheduler get_jobs() 返回空列表
问题描述
一直在为此苦苦挣扎。我在带有 UWSGI 的 AWS 服务器上使用 Flask 设置了我的 apscheduler。一切似乎都很好,除了我无法从 scheduler.get_jobs() 获取计划作业列表。还尝试了 scheduler.print_jobs() 结果为“无”。这是代码:
from flask import Flask
app = Flask(__name__)
from apscheduler.schedulers.background import BackgroundScheduler
scheduler = BackgroundScheduler(daemon=True)
scheduler.start()
我有一个 app.route 来启动定期任务,然后有另一个路线来显示预定路线。我的定期任务开始正常,并在正确的时间间隔内完成它需要做的事情(更新我的谷歌电子表格文件)。
#schedules the job but returns "None"
@app.route("/runscheduler")
def runscheduler():
with app.app_context():
job = scheduler.add_job(get_balance, 'interval', seconds=120, id="sfvs")
return str(scheduler.print_jobs())
我试图创建一个返回 scheduler.get_jobs() 但返回一个空列表的路由
@app.route("/schedule")
def schedule():
return str(scheduler.get_jobs())
我尝试的最后一件事是在我的家庭路线中通过 id 获取工作信息,这实际上返回了所有正确的信息:
@app.route("/")
def hello():
return str(scheduler.get_job("sfvs"))
返回:get_balance(触发器:interval[0:02:00],下次运行时间:2021-02-21 03:39:17 UTC)
所以我的问题是为什么我的代码不能显示计划作业的列表(既不是 scheduler.get_jobs() 也不是 scheduler.print_jobs()),但我仍然可以通过 id 访问它来获取我的作业的所有详细信息?最重要的是,这项工作仍然可以在正确的时间间隔内完美地执行。
解决方案
推荐阅读
- javascript - 清除日期选择器字段
- regex - PCRE - 当且仅当更远的地方适合时匹配每个
- visual-studio - VS2019 上的 LogicApps 说“无法识别术语 'Get-AzureRmResourceGroup'”
- php - Can't catch Ldap_add exception
- delphi - loadfromfile 上的 TStringlist 错误:目标多字节代码页中不存在 Unicode 字符的映射
- html - 如何使用 CSS 将文本颜色作为背景图像?
- python - 如何将 BeautifulSoup Div Tag 对象作为字典读取
- d3.js - 将 d3js 图表 xAxis 和 yAxis 字体系列的 sans-serief 覆盖为自定义一个
- python - Python 正则表达式错误:无法使用 re.match 函数获得正确的结果
- javascript - 通过在Javascript中用零填充空元素来修复具有不同长度行的数组