跳转到主要内容

轻松从环境变量设置Flask设置

项目描述

https://badge.fury.io/py/Flask-Env.svg https://travis-ci.org/brettlangdon/flask-env.svg?branch=master

轻松从Flask环境变量设置配置。

使用flask-env的原因是为了能够遵循12因素应用的建议来配置您的应用程序。

使用flask-env,您可以在代码中定义默认配置选项,并通过环境变量轻松覆盖。

安装

pip install Flask-Env

用法

使用flask-env,您将定义配置作为一个对象,并通过app.config.from_object方法将其加载到您的Flask应用程序中。

Python 2

from flask import Flask
from flask_env import MetaFlaskEnv


class Configuration(object):
    __metaclass__ = MetaFlaskEnv

    DEBUG = False
    PORT = 5000


app = Flask(__name__)
app.config.from_object(Configuration)

Python 3

from flask import Flask
from flask_env import MetaFlaskEnv


class Configuration(metaclass=MetaFlaskEnv):
    DEBUG = False
    PORT = 5000


app = Flask(__name__)
app.config.from_object(Configuration)

覆盖环境变量

# Export environment variable for shell session
export DEBUG=true

# Set explicitly for a specific command execution
PORT=8000 python app.py

配置flask-env

flask-env提供两种配置选项以确定如何/加载哪些环境变量。

ENV_PREFIX

仅考虑以该前缀开头的环境变量。在设置配置时,将从前缀中删除环境变量名称。 (默认: '',例如: ENV_PREFIX = 'MYAPP_')

ENV_LOAD_ALL

是否加载配置对象的全部环境变量。当False时,仅加载在配置对象上预定义的设置,其他所有设置都将被忽略。当True时,将加载os.environ中定义的所有环境变量到您的配置对象中。 (默认 False)

设置配置值

您可以直接在Flask配置对象上设置flask-env配置设置。

from flask_env import MetaFlaskEnv


class Configuration(metaclass=MetaFlaskEnv):
    ENV_PREFIX = 'MYAPP_'
    ENV_LOAD_ALL = False

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

Flask-Env-2.0.0.tar.gz (5.1 kB 查看哈希值)

上传时间 源代码

构建分布

Flask_Env-2.0.0-py3-none-any.whl (3.1 kB 查看哈希值)

上传时间 Python 3

支持者