オブジェクトをフラスコアプリに正しい方法で渡す方法について疑問がありました。
アイデアは単純です。
アプリケーションのAPIを作成したいのですが、これは、フラスコアプリケーションによって処理されたhttpリクエストが、メインアプリケーションのメソッドをトリガーすることを意味します。
そのためには、フラスコが他のプロセスを何らかの方法で認識している必要があります。
現在、私は次のようなものを持っています:
if __name__ == '__main__':
Logger = MyProcess()
app.run()
私はそのようなことをすることができる必要があります:
@app.route('/nb_trendy')
def nb_trendy():
res = Logger.get_trendy()
return jsonify(res)
つまり、アプリにLoggerのハンドルを与えるか、アプリ内でLoggerを直接定義する必要があります。
しかし、私が見つけることができる各ソリューションでは、アプリを継承するクラスを作成して、オブジェクトをオーバーライド__init__()
してパラメーターとして受け取るか、run()
メソッドを変更する必要があります。
私がそれをする現在の方法はしかしです:
class MyFlask(Flask):
def __init__():
Flask.__init__()
Logger = MyProcess()
これはあなたがそれをする方法でもありますか、それともこれを行うためのより良い方法がありますか?
ありがとう!
この質問のより一般的なバージョンは次のとおりです。FlaskのWebAPI