Flask 如何在通过apscheduler更新值后重新呈现html
我在Flask中实现了APScheduler,以异步运行一些代码。在APScheduler使用的函数中,我正在运行一些打印命令,这些命令工作正常。但是,在更新HTML中一个文本字段中显示的一个变量后,我希望重新加载HTML页面以显示新输入的文本,但是waitforcompletion函数中的return render_模板返回一个错误(另一个可以正常工作)。如何强制重新加载以查看更新的值Flask 如何在通过apscheduler更新值后重新呈现html,flask,apscheduler,Flask,Apscheduler,我在Flask中实现了APScheduler,以异步运行一些代码。在APScheduler使用的函数中,我正在运行一些打印命令,这些命令工作正常。但是,在更新HTML中一个文本字段中显示的一个变量后,我希望重新加载HTML页面以显示新输入的文本,但是waitforcompletion函数中的return render_模板返回一个错误(另一个可以正常工作)。如何强制重新加载以查看更新的值 from apscheduler.schedulers.background import Backgrou
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作业和应用程序之间就没有通信。顺便问一下,你看到了吗