我正在使用带有蓝图的 Flask 来为我的网站获取框架,并且在我的应用程序深处使用配置类时遇到问题。
这是一些虚拟代码,解释了我如何设置所有内容:
网站配置.py
class Config(object):
pass
class ProductionConfig(Config):
DEBUG = False
class DevelopmentConfig(Config):
DEBUG = True
网站/__ 初始化 __.py:
# Some app code and config loading
app = Flask('website')
app.config.from_object('websiteconfig.DevelopmentConfig')
# Import some random blueprint
from website import users
app.register_blueprint(users.api)
# This works:
# print app.config['DEBUG']
网站/用户/__ 初始化 __.py:
from flask import Blueprint
from website.users.models import test
api = Blueprint('users', __name__, url_prefix='/users')
# This works:
# print api.config['DEBUG']
# From models
print test()
网站/用户/models.py:
# How can I reach the config variables here?
def test():
# I want config['DEBUG'] here
如何访问存储在包app.py
深处加载的类中的配置变量users
?
像from website import app
(在models.py中)这样的循环导入是可接受的解决方案吗?
如果没有,是否有一些我错过的简单解决方案?