在应用工厂中创建Flask扩展名时将其导入

发布于 2021-01-29 17:10:59

我想在应用程序的不同模块中使用Flask-
Perm的装饰器。我正在使用应用程序工厂模式。如果在工厂中创建扩展名,则无法导入该扩展名以在其他模块中使用。使用应用程序工厂时如何导入扩展?

from flask_perm import Perm

def create_app():
    app = Flask(__name__)
    perm = Perm(app)
    return app
关注者
0
被浏览
52
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    Flask-Perm的文档在顶部显示了如何执行此操作。

    在工厂外创建扩展名。在工厂内部初始化扩展。每个支持应用程序工厂的Flask扩展都使用此模式。

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

    现在,您可以from myproject import perm在需要访问它的任何地方使用它。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看