Effortless class-based settings for Django.
Project description
django-class-settings
django-class-settings aims to simplify complicated settings layouts by using classes instead of modules. Some of the benefits of using classes include:
- Real inheritance
- Foolproof settings layouts
- Properties
- Implicit environment variable names
Example
# .env export DJANGO_SECRET_KEY='*2#fz@c0w5fe8f-' export DJANGO_DEBUG=true
# manage.py import os import sys import class_settings from class_settings import env from django.core.management import execute_from_command_line if __name__ == '__main__': env.read_env() os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myproject.settings') os.environ.setdefault('DJANGO_SETTINGS_CLASS', 'MySettings') class_settings.setup() execute_from_command_line(sys.argv)
# myproject/settings.py from class_settings import Settings, env class MySettings(Settings): SECRET_KEY = env() DEBUG = env.bool(default=False) INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ] ROOT_URLCONF = 'myproject.urls' WSGI_APPLICATION = 'myproject.wsgi.application'
Installation
Install it from PyPI with pip:
pip install django-class-settings
Requirements
- Django 1.11+
- Python 3.5+
Resources
- Documentation: https://django-class-settings.readthedocs.io/
- Releases: https://pypi.org/project/django-class-settings/
- Changelog: https://github.com/orlnub123/django-class-settings/blob/master/CHANGELOG.md
- Code: https://github.com/orlnub123/django-class-settings
- License: MIT
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
Built Distribution
Close
Hashes for django-class-settings-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8d84b2df9130386360f7ef87d79de88dcb2784ff878682aedd29d866fe2dfb48 |
|
MD5 | 22d589a246c7d4f9e12b8defa05f1db6 |
|
BLAKE2-256 | b9b68d982c987dd487cdcc53d69306ba4b78064491b8c8fb498c3f4591ed2416 |
Close
Hashes for django_class_settings-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 87edb69a4077d8badb751f9e02fa68cbe849c1639a33f9ca2e7df8c1b7d3b994 |
|
MD5 | f1b8d2114651c91a359d2a4fd70e50b4 |
|
BLAKE2-256 | c7c837dd1d20359a7f2212c004534edfa7bb6f06710933f7cd704b18f322c7cb |