Flask的生产配置

时间:2014-09-21 08:56:22

标签: python flask

对于开发,似乎您希望在数据库的配置文件中具有localhost值。但是我也希望有一个生产设置。

似乎在这里讨论它:http://flask.pocoo.org/docs/0.10/config/#configuring-from-files

它推荐这种方法:

app = Flask(__name__)
app.config.from_object('config')
app.config.from_envvar('YOURAPPLICATION_SETTINGS')

export YOURAPPLICATION_SETTINGS=/path/to/settings.cfg

我的问题是,为什么你不直接指向生产文件,而不是指向指向配置位置的envvar。这似乎是一个不必要的步骤。

app = Flask(__name__)
app.config.from_object('config')
app.config.from_envvar('config_production')

2 个答案:

答案 0 :(得分:1)

不确定这是否被认为是“首选”方法(许多人有不同的偏好),但我所说的有益的是,您不必触摸环境中的代码来更新其配置。例如,如果您使用的是heroku,则可以执行heroku config:set YOURAPPLICATION_SETTINGS=/path/。在各种环境中风险更小,更易于处理。

答案 1 :(得分:0)

似乎它会使生成的应用程序的维护变得更容易系统管理员,他们可能不了解Flask甚至python!

所以,如果你在环境变量中设置一个熟悉的术语,那将更容易;)