使用环境变量取值, 是为了增强系统的适应性, 在某些场景下, 设置环境变量比较方便.
假如, 你有一套代码, 部署在不同的系统中, 恰好这些系统有权限且很容易地设置环境变量, 那么, 这时候通过环境变量取值就变得非常有意义, 而你只需要维护这一套代码即可, 而不用每次都去修改某个值了.
像你上面的那个值, 可能你现在是使用SQLITE数据库, 但如果你突然又想使用mysql数据, 那你就得改代码了. 而如果你使用环境变量, 你只需要把数据库连接URI写入环境变量DATABASE_URL
即可, 相当滴方便.
在有的部署场景下需要环境变量的方式来传递配置, 这样更加灵活。
比如:在容器环境下, db和web或app的采用link的方式。 link的子容器会集成父容器的环境变量。
mysql server 为父容器 link n个flask的子容器, 这是docker会将父进程的配置作为环境变量放到flask的容器中。 这是flask就根据环境变量来链接mysql数据库。