Skip to main content

Turnkey Django settings for data management applications.

Project description

django-composed-configuration

PyPI

Turnkey Django settings for data management applications.

Installation

Add to your project's requirements:

django-composed-configuration[dev,prod]

In your project's settings.py:

from composed_configuration import (
    ComposedConfiguration,
    ConfigMixin,
    DevelopmentBaseConfiguration,
    ProductionBaseConfiguration,
)


class _ProjectMixin(ConfigMixin):
    # Define additional project-specific settings or overrides here
    pass

    @staticmethod
    def before_binding(configuration: ComposedConfiguration) -> None:
        # Perform any non-overriding mutation of existing settings here
        # The "configuration" variable contains the flattened settings
        # For example:
        #   configuration.INSTALLED_APPS += ['my_extra_app']
        pass


class DevelopmentConfiguration(_ProjectMixin, DevelopmentBaseConfiguration):
    pass


class ProductionConfiguration(_ProjectMixin, ProductionBaseConfiguration):
    pass

At runtime:

  • continue to set the DJANGO_SETTINGS_MODULE environment variable (pointing to settings.py)
  • also set DJANGO_CONFIGURATION, with a value of either DevelopmentConfiguration or ProductionConfiguration

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

django-composed-configuration-0.17.0.tar.gz (23.0 kB view hashes)

Uploaded Source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page