Usage
Precedence
Values are resolved in this order:
environment variable
local settings module
default passed in code
Regular configuration values
from configvars import config
DEBUG = config("DEBUG", False)
ALLOWED_HOSTS = config("ALLOWED_HOSTS", "localhost").split(",")
Secret values
from configvars import secret
DB_PASSWORD = secret("DB_PASSWORD", file_var="DB_PASSWORD_FILE")
Descriptions in dumps
Both config() and secret() support desc=... for management command
output:
API_URL = config("API_URL", "https://example.com", desc="Base API URL")
Env prefixes
Use initialize(env_prefix="APP_") to avoid name collisions:
from configvars import initialize, config
initialize(env_prefix="APP_")
API_KEY = config("API_KEY")
This resolves APP_API_KEY in the environment.