4

複数のアプリケーションで使用するために、いくつかの sqlalchemy モデルを個別のインストール可能なパッケージ (../lib/site-packages) に抽出しました。したがって、次のことだけを行う必要があります。

from models_package import MyModel

これらのモデルへのアクセスが必要なアプリケーションから。

アプリケーションごとに異なる可能性があるいくつかのモデルで使用されるいくつかのアプリケーション依存の構成変数を取得する満足のいく方法が見つからないことを除けば、これまでのところすべて問題ありません。そのため、一部のモデルは、いくつかの変数を認識する必要があります。以前は、それらが含まれていたアプリケーションを使用していました。

ない

current_app.config['XYZ']

また

config = LocalProxy(lambda: current_app.config['XYZ'])

動作しました(outside of application contextエラー)ので、今行き詰まっています。多分これは私に代わってプログラミングやデザインが悪いので、どうすればこれを解決できますか? 何らかの方法があるに違いありませんが、私はまだその方法を考えていません。

解決:

モジュールの読み込み時に発生する設定項目 (API キーを含む定数など) を回避すると、上記の両方が機能するはずです。アプリケーション内のモデルの使用のコンテキストでそれらを使用しないものは、もちろんエラーになります。必要な値を返すメソッドは適切なはずです。

4

2 に答える 2