Flask 如何在通过apscheduler更新值后重新呈现html

Flask 如何在通过apscheduler更新值后重新呈现html,flask,apscheduler,Flask,Apscheduler,我在Flask中实现了APScheduler,以异步运行一些代码。在APScheduler使用的函数中,我正在运行一些打印命令,这些命令工作正常。但是,在更新HTML中一个文本字段中显示的一个变量后,我希望重新加载HTML页面以显示新输入的文本,但是waitforcompletion函数中的return render_模板返回一个错误(另一个可以正常工作)。如何强制重新加载以查看更新的值 from apscheduler.schedulers.background import Backgrou

我在Flask中实现了APScheduler,以异步运行一些代码。在APScheduler使用的函数中,我正在运行一些打印命令,这些命令工作正常。但是,在更新HTML中一个文本字段中显示的一个变量后,我希望重新加载HTML页面以显示新输入的文本,但是waitforcompletion函数中的return render_模板返回一个错误(另一个可以正常工作)。如何强制重新加载以查看更新的值

from apscheduler.schedulers.background import BackgroundScheduler
scheduler = BackgroundScheduler()

data = {
  "releaseoutput":""
}

def waitforcompletion():
  global data
  sleep(10)
  data["releaseoutput"] += "Working... 112313123213131231231"
  print("THIS WORKS!!")
  return render_template("home.html",data=data)

@myblueprint.route('/home', methods=['GET', 'POST'])
@myblueprint.route('/', methods=['GET', 'POST'])
def blueprinthome():
  if request.method == 'POST':
    scheduler.add_job(id="Check Release Status", func=waitforcompletion,trigger = "interval",seconds=10,max_instances=1)
    scheduler.start()
  data["releaseoutput"] += "Started"
return render_template("home.html",data=data)

`from apscheduler.schedulers.background import BackgroundScheduler

scheduler = BackgroundScheduler()

data = {
  "releaseoutput":""
}

def waitforcompletion():
  global data
  sleep(10)
  data["releaseoutput"] += "Working... 112313123213131231231"
  print("THIS WORKS!!")
  return render_template("home.html",data=data)

@myblueprint.route('/home', methods=['GET', 'POST'])
@myblueprint.route('/', methods=['GET', 'POST'])
def blueprinthome():
  if request.method == 'POST':
    scheduler.add_job(id="Check Release Status", func=waitforcompletion,trigger = "interval",seconds=10,max_instances=1)
    scheduler.start()
  data["releaseoutput"] += "Started"
return render_template("home.html",data=data)

最好的方法可能是使用javascript ajax请求定期检查更新的值,因为一旦作业启动,apscheduler作业和应用程序之间就没有通信。顺便问一下,你看到了吗