2

問題は進行状況を含むように更新されました

次のコードがあり、セロリのタスクが正常に開始されます。後でもう一度確認できるように、非同期の結果をどこに保存すればよいかわかりません

#!/usr/bin/env python

"""Page views."""

from flask import render_template, request
from flask import Flask

from celerytest import add

from time import sleep


app = Flask(__name__)

async_res = []

@app.route('/', methods=['GET', 'POST'])
def run():
    if request.method == 'GET':
        return render_template("template.html")
    else:
        form = request.form
        n1 = str(form.get("n1"))
        n2 = str(form.get("n2"))
        aysnc_res = add.delay(n1,n2)
        return render_template("loading.html")

@app.route('/loading')
def check_if_complete():
    if async_res.ready() == True:
        return render_template("template2.html", val=async_res.get())
    else:
        sleep(5)
        return render_template("loading.html")


if __name__ == '__main__':
    app.run()

async_res私のフラスコアプリにグローバル変数として保存すると、サーバーエラーが発生するようです。「読み込みページ」で結果を確認できるように、結果を保存する最良の方法は何ですか?

4

1 に答える 1