django12factor: Bringing 12factor to Django
Project description
What is it?
Django is an awesome Python web framework.
“The Twelve-Factor App“ is an awesome methodology for building SaaS apps.
django-12factor makes Django more 12factor-y. Right now, this focuses on the Config - “Store config in the environment”; Heroku users with addons will be particularly familiar with this.
Usage
Add the following to the bottom of your settings.py:
import django12factor d12f = django12factor.factorise()
factorise() returns a dict of settings, so you can now use and assign them as you wish, e.g.
DEBUG = d12f['DEBUG'] LOGGING = d12f['LOGGING']
If you don’t like that repetition, you can (ab)use globals() like so:
import django12factor d12f = django12factor.factorise() def f(setting): globals()[setting] = d12f[setting] f('DEBUG') f('LOGGING')
You can also add non-Django settings this way, e.g. keys to APIs:
d12f = django12factor.factorise(custom_settings=['MAILCHIMP_API_KEY', 'GOOGLE_ANALYTICS_KEY']) MAILCHIMP_API_KEY = d12f['MAILCHIMP_API_KEY'] GOOGLE_ANALYTICS_KEY = d12f['GOOGLE_ANALYTICS_KEY']
Give me everything!
If you say so…
import django12factor globals().update(django12factor.factorise())
Settings
The following settings are currently supported:
DEBUG
TEMPLATE_DEBUG
CACHES
Uses django-cache-url
LOGGING
DATABASES
Uses dj-database-url - parses DATABASE_URL if it exists, otherwise falls back to in-memory sqlite.
ALLOWED_HOSTS
SECRET_KEY
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django12factor-1.2.tar.gz
.
File metadata
- Download URL: django12factor-1.2.tar.gz
- Upload date:
- Size: 3.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
fea88173f1a5343e827595fca0e052d91680d5c91da6d8ad4bee8bac1bc3c452
|
|
MD5 |
70a224a5516dd6a811a4fadc3155d467
|
|
BLAKE2b-256 |
aead9f4938f1a928e0114c1f2232ef98092bca0e3b2d473cf3aaacee73af9bdf
|