0

app factory パターンを使用して Flask アプリケーションを構築しています。virtualenvにBPythonをインストールしてシェルを使用すると、アプリのコンテキストを取得できないように見えるため、次のようなことをしようとすると:

>> Role.query.all()

RuntimeError が発生します。

application not registered on db instance and no application bound to current context

アプリ コンテキストの作成を使用して、次のようにする必要があります。

with app.app_context():
    ...
    do stuff

ただし、IPython を使用すると、問題なく動作します。ドキュメントでは、BPython と IPython の両方に対応していると書かれているため、アプリ コンテキストを作成しない理由がわかりません。

4

1 に答える 1