【问题标题】:Python Flask Blueprint with classes带有类的 Python Flask 蓝图
【发布时间】:2021-05-16 10:50:20
【问题描述】:

我正在考虑迁移到 Flask 中的蓝图,但是当前的实现将 Flask 应用程序实例作为 init() 的一部分传递到一个类中,请问我该如何处理蓝图?

def __init__(self, flask_instance, logger, event_manager):
    self._logger = logger
    self._flask = flask_instance
    self._event_manager = event_manager

    # Add route : /management/add
    self._quart.add_url_rule('/job/new_job',
        methods = ['POST'], view_func = self._new_job)

【问题讨论】:

    标签: python flask


    【解决方案1】:

    你把蓝图放到类构建中

    class Test(object):
        blueprint = Blueprint("Test", __name__)
        def __init__(self, db_host, db_port):
            self.db_host = db_host
            self.db_port = db_port
        def loadDb(self):
            return Connection(self.db_host, self.db_port)
        @blueprint.route("/<var>")
        def testView(var): # adding self here gives me an error
            return render_template("base.html", myvar=self.loadDb().find({"id": var})
    

    参考:How to pass class's self through a flask.Blueprint.route decorator?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-14
      • 1970-01-01
      • 2018-07-17
      • 1970-01-01
      • 1970-01-01
      • 2017-05-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多