私はフラスコセキュリティを使いたいです。 私は拡張用のグローバルオブジェクトを作成するテンプレートフラスコアプリケーションを使用していて、アプリケーションの作成時にそれらを初期化します。例: extensions.pyこのようなコードがある:フラスコセキュリティ:青写真/拡張アプリケーションパターンでの使用方法?
from flask_bcrypt import Bcrypt
from flask_caching import Cache ...
from flask_security import Security ...
bcrypt = Bcrypt() ...
security = Security()
は、次いでapp.py
にそうようなinit_app(app)
方法を使用register_extensions(app)
への呼び出し:
bcrypt.init_app(app)
security.init_app(app)
実際フラスコセキュリティはinit_app()
方法を有しています。しかし、ドキュメンテーションによると、SecurityオブジェクトにはUserとRoleモデルが必要なDataStoreオブジェクトが必要です。これまでにない拡張機能が必要な場合に、app.pyでUserモデルとRoleモデルをインポートするのは正しいとは感じません。
「大型フラスコアプリ」モデルを使用しているときにFlask-Securityを使用するためのベストプラクティスは何ですか?すべてのオブジェクトが1つの場所に定義されているという単純なケースです。