オブジェクトにラップしたフラスコAPIがあります。これを行うことで、単体テストが簡単になりました。これは、API が本番環境、テスト環境、またはその他の環境にあるかどうかに応じて、さまざまな設定で API をインスタンス化できるためです。
私は今、API を少し拡張しようとしており、そのために設計図を使用しています。問題は、ブループリントに引数を渡す方法がわからないことです。私のルートでは、どのデータベースにアクセスするかなどの情報が必要ですが、その情報は静的ではありません。この情報をブループリントに渡すにはどうすればよいですか? 例として以下のコードを含めました。
api.py:
class MyApi(object):
def __init__(self, databaseURI):
self.app = Flask(__name__)
self.app.register_blueprint(myblueprint)
blueprint.py
myblueprint= Blueprint('myblueprint', __name__)
@myblueprint.route('/route', methods=['GET'])
def route():
database = OpenDatabaseConnection(databaseURI)
ここに関連する質問があります: コンストラクター引数を Flask ブループリントに渡すにはどうすればよいですか?
しかし、質問に答える人々は、任意の引数をブループリントに渡す方法の質問に実際に答えることなく、op のユースケース固有の問題を解決します。