Skip to main content

Django app allowing users to set app specific preferences through the admin interface.

Project description

Django app allowing users to set app specific preferences through the admin interface.

Provides singleton admin views for Preferences objects and a simple interface to preference values. Singleton views ensures only one preference intance is available for each Preferences class.

Installation

  1. Add preferences to your INSTALLED APPS setting.

  2. Add preferences url include to the project’s url.py file BEFORE your admin urls include statement. Make sure to use ‘admin/’ as the start of the include’s path since it will override certain admin views:

    (r'^admin/', include('preferences.urls')),

Usage

To create preferences for your app create a model storing your preferences as normal, with the model inheriting from preferences.models.Preferences. Also specify preferences.models as your models module:

from django.db import models
from preferences.models import Preferences

class MyPreferences(Preferences):
    __module__ = 'preferences.models'
    portal_contact_email = models.EmailField()

Admin classes are specified as per usual, no changes are needed. Your preferences will show up under the Preferences app label in Django admin.

Preferences can be accessed in python by importing the preferences module and traversing to your required preferences in the form preferences.<ModelName>.<field>, i.e.:

from preferences import preferences

portal_contact_email = preferences.MyPreferences.portal_contact_email

Change Log

0.0.3

  1. Spelling correction, thanks tiktuk.

0.0.2

  1. Doc update to indicate importance of placing url include before admin url include.

0.0.1

  1. First super alpha release.

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-preferences-0.0.3.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

django_preferences-0.0.3-py2.6.egg (6.7 kB view details)

Uploaded Egg

File details

Details for the file django-preferences-0.0.3.tar.gz.

File metadata

File hashes

Hashes for django-preferences-0.0.3.tar.gz
Algorithm Hash digest
SHA256 5887929975af8abd8e9c52580efb5cfe706fa6454787d1a099e485c0001137d1
MD5 a4ebb2e6e77413c496e7fcb94b92b4c3
BLAKE2b-256 2b4dcd3296eeafcaebfe130f0e8cb7850023a3b425a977c56872ea0b2ccd739c

See more details on using hashes here.

File details

Details for the file django_preferences-0.0.3-py2.6.egg.

File metadata

File hashes

Hashes for django_preferences-0.0.3-py2.6.egg
Algorithm Hash digest
SHA256 030f27c7bfad809eb7b7c2a2ca62b88716810347c55e1de2c1917f262d4b5f7d
MD5 b668cf978158f0a5f7411cae5516b9f7
BLAKE2b-256 37e3e1766e85e7ab5a9f945f21c0572840dd22213f3096465cb438c61d587f77

See more details on using hashes here.

Supported by

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