我有一个flask应用程序,该应用程序将不同的配置文件用于开发和生产环境。相关的代码段是这样的:
app.config.from_object('config.dev') app.config.from_envvar('SPOTPIX_SETTINGS', silent=True)
当我在本地服务器上进行开发时,配置取自config.dev,但是当我将代码推送到heroku时,我想将SPOTPIX_SETTINGS环境变量设置为指向“ config.prod”文件。这可以在heroku命令行客户端中完成,如下所示:
heroku config:set SPOTPIX_SETTINGS=
但是,我不知道应该在等号右边写什么,因为我无法将生产配置文件的绝对路径分配给环境变量,因为在heroku中这与在我的环境中是不同的开发机器。
你应该使用a env variable查看你是否在dev或heroku中。
env variable
heroku config:set IS_HEROKU=True
然后在你的文件中
import os is_prod = os.environ.get('IS_HEROKU', None) if is_prod: #here goes all your heroku config