环境变量是为计算机(Windows 或 UNIX/LINUX 等)上运行的特定进程定义的名称、值对。它们不是文件。您可以创建自己的环境变量并为其指定任何名称/值。例如,FLASKR_SETTING 是环境变量的名称,其值可以设置为配置文件。例如,在 UNIX 终端上,您可以执行以下操作:
export FLASKR_SETTING = /somepath/config.txt
通过执行上述操作,您刚刚创建了一个名为 FLASKR_SETTING 的环境变量,其值设置为 /somepath/config.txt。您使用环境变量的原因是因为您可以将它们绑定到某个进程并在您的进程启动时按需使用。您不必担心将它们保存在文件中。事实上,您可以为您的进程/应用程序创建一个启动脚本,该脚本可以在您开始使用应用程序之前设置各种环境变量。
在烧瓶的情况下, app.config.from_envvar('FLASKR_SETTINGS', silent=True) 将 FLASKR_SETTINGS 的值设置为来自 env 的值。多变的。所以它基本上翻译为:
- Find the config file (/somepath/config.txt etc.)
- lets say the contents of config file is:
SECRET_KEY="whatever"
DEBUG = True
- Then using the 2 above, it will be translated to:
app.config['SECRET_KEY'] = "whatever"
app.config['DEBUG'] = True
因此,您可以根据需要更新配置文件,而无需更改代码。