环境变量中加载:
????????环境也就是操作系统,变量就是值,环境变量中加载就是由操作系统代为保存的变量值
????????本质就是:环境变量去指明配置文件,把环境变量的值当作配置文件所在的地方加载进来
????????其实也是从配置文件去加载,但是配置文件名字不是写死在代码,是保存在操作系统里面的变量了(给py文件设置个变量,通过问变量来获得这个文件内部信息)
? ? ? ? 代码:app.config.from_envvar()
from flask import Flask
app=Flask(__name__,static_url_path='/s',static_folder='static_fires') #Flask(模块名字符串类型)
#通过自取的环境变量加载
app.config.from_envvar('PROJECT_SETTING')
#定义视图
@app.route('/')
def index():
#为了验证是否完成,读取下配置信息验证
#不明确用get,此处明确有一个SECRET_KEY的,直接方括号
#再打印出来看看是否有信息,用print
print(app.config['SECRET_KEY'])
return'hello world'
if __name__ == '__main__':
app.run()
在设置环境变量的时候要注意,要有”定义“,无定义会显示没有设置环境变量,如图:
RuntimeError: The environment variable 'PROJECT_SETTING' is not set and as such configuration could not be loaded. Set this variable and make it point to a configuration file
如何”定义“呢(更改/设置环境变量)?
看到网上有用如下这段代码的,但是我windows系统的终端说export不是指令,我觉得是系统不同导致的
export PROJECT_SETTING=setting.py
最终结局方案是,选中该代码文件,右键选择修改运行配置,在其中更改原先的环境变量
setting.py存储配置信息
SECRET_KEY='AAABBB'
此时运行,出现网页的同时出现配置信息SECRET_KEY中的值,如图