Skip to main content

A firefox-like about:config implementation for one-off settings in Django apps.

Project description

License: GPL v3 Codeship codecov PyPI version Openhub

A firefox-like about:config implementation for one-off settings in Django apps.

Compatible Python versions

3.4+

Compatible Django versions

1.11, 2.0, 2.1

Installation

You can install aboutconfig either from source or via pip:

pip install django-aboutconfig

The only thing you need to do to configure it is add it to your INSTALLED_APPS like all other django applications:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    ...
    'aboutconfig'
]

Then just run manage.py migrate and you’re good to go.

Note: aboutconfig relies on having a good caching mechanism to be fast (all configured values are preloaded into cache on start-up). You should ideally have something like memcached configured to avoid slowdowns. See Django documentation for details.

Usage

By default, aboutconfig comes with four supported data-types: integer, boolean, string and decimal. All data types are configurable and you can add your own if necesessary.

To add some configuration values, head over to the django admin and add an instance of the Config model.

Having done this, you can access the configuration value via aboutconfig.get_config() in Python code or the get_config template filter (load config before using).

Python code:

from aboutconfig import get_config

def my_view(request):
    # some code...
    admin_email = get_config('admin.details.email')
    # some more code...

Template code:

{% load config %}

The website admin's email is {{ 'admin.details.email'|get_config }}.

>>> An assignment tag also exists for convenience:

{% get_config 'admin.details.email' as email %}
The website admin's email is <a href="mailto:{{ email }}">{{ email }}</a>.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
django_aboutconfig-1.0.2-py2.py3-none-any.whl (16.1 kB) Copy SHA256 hash SHA256 Wheel 3.6
django-aboutconfig-1.0.2.tar.gz (24.7 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page