首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何为多个flask服务器共享公共钩子函数

如何为多个flask服务器共享公共钩子函数
EN

Stack Overflow用户
提问于 2015-07-03 14:36:08
回答 1查看 145关注 0票数 0

假设我需要为每个flask服务器执行before_request

如何在没有COPY-PASTE的情况下将以下代码片段共享到每台服务器

代码语言:javascript
复制
    @app.before_request
    def before_request(*args, **kwargs):
        params = get_params()
        if params.has_key('start_dt') and params.has_key('end_dt'):
            g.mongo_query = Mongo.get_date_range_query(params)
        else:
            g.mongo_query = {}
EN

回答 1

Stack Overflow用户

发布于 2015-07-03 16:47:07

您可以使用application factory来实现这一点。如果您像这样初始化flask应用程序:

代码语言:javascript
复制
from flask import Flask
import yourdb

def create_app(config_filename):
    app = Flask(__name__)
    app.config.from_pyfile(config_filename)

    yourdb.init_app(app)

    #add_extensions
    #add_blueprints/views
    # ... some other configuration ...

    @app.before_request
    def before_request(*args, **kwargs):
        #Your code

    return app

在manage/run中,您可以

代码语言:javascript
复制
    from somewhere import create_app
    app = create_app(<your_config>)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31200118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档