2017-05-31 1 views
1

Ich möchte Flask-Perm-Dekoratoren in verschiedenen Modulen in meiner Anwendung verwenden. Ich verwende das App-Fabrikmuster. Wenn ich die Erweiterung in der Fabrik erzeuge, kann ich sie nicht importieren, um sie in den anderen Modulen zu verwenden. Wie kann ich eine Erweiterung importieren, wenn ich eine App Factory verwende?Importieren Flask-Erweiterung, wenn es in einer App-Fabrik erstellt wird

from flask_perm import Perm 

def create_app(): 
    app = Flask(__name__) 
    perm = Perm(app) 
    return app 

Antwort

2

Flask-Perm docs zeigen, wie an der Spitze dieses Recht zu tun.

Erstellen Sie die Erweiterung außerhalb der Fabrik. Initiieren Sie die Erweiterung in der Fabrik. Jede Flask-Erweiterung, die App-Factorys unterstützt, verwendet dieses Muster.

perm = Perm() 

def create_app(): 
    app = Flask(__name__) 
    perm.init_app(app) 
    return app 

Jetzt können Sie from myproject import perm verwenden, wo immer Sie es zugreifen müssen.

Verwandte Themen