{ "info": { "author": "Praekelt Consulting", "author_email": "dev@praekelt.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Internet :: WWW/HTTP :: Dynamic Content" ], "description": "Django Preferences\n==================\n**Django app allowing users to set app specific preferences through the admin interface.**\n\n.. image:: https://travis-ci.org/praekelt/django-preferences.svg?branch=develop\n :target: https://travis-ci.org/praekelt/django-preferences\n\n.. image:: https://coveralls.io/repos/github/praekelt/django-preferences/badge.svg?branch=develop\n :target: https://coveralls.io/github/praekelt/django-preferences?branch=develop\n\n.. image:: https://badge.fury.io/py/django-preferences.svg\n :target: https://badge.fury.io/py/django-preferences\n\nProvides singleton admin views for Preferences objects and a simple interface to preference values.\nSingleton views ensure only one preference instance per site is available for each ``Preferences`` class.\n\n..\n\n **Requires** and supports `Django's \"sites\" framework `_, which means you can have multiple preferences, each associated with a particular site.\n\n.. contents:: Contents\n :depth: 5\n\nRequirements\n------------\n\n#. Python 2.7, 3.5-3.7\n\n#. Django 1.11, 2.0, 2.1\n\n#. django.contrib.sites\n\n\nInstallation\n------------\n\n#. Install or add ``django-preferences`` to your Python path.\n\n#. Add ``preferences`` to your ``INSTALLED APPS`` setting.\n\n#. Add ``django.contrib.sites`` to your ``INSTALLED APPS`` setting. django-preferences associates preferences to specific sites and thus requires Django's \"sites\" framework to be installed.\n\n#. Optionally, add ``preferences.context_processors.preferences_cp`` to your template option settings. This will automatically add a ``preferences`` variable to your template context::\n\n TEMPLATES = [{\n ...\n 'OPTIONS': {\n 'context_processors': [\n ...\n 'preferences.context_processors.preferences_cp',\n ],\n },\n }]\n\nUsage\n-----\nTo create preferences for your app create a Django ORM model as usual, with the model inheriting from ``preferences.models.Preferences``. Also specify ``preferences.models`` as your model's module::\n\n from django.db import models\n from preferences.models import Preferences\n\n class MyPreferences(Preferences):\n portal_contact_email = models.EmailField()\n\nAdmin classes are specified as per usual, except that they have to inherit from or be registered with ``preferences.admin.PreferencesAdmin``, i.e.::\n\n from django.contrib import admin\n\n from preferences.admin import PreferencesAdmin\n from .models import MyPreferences\n\n admin.site.register(MyPreferences, PreferencesAdmin)\n\nWhen your model is registered with admin it will show up under the *Preferences* app label in Django admin.\n\nPreferences can be accessed in Python by importing the ``preferences`` module and traversing to your required preference in the form ``preferences..``, i.e.::\n\n from preferences import preferences\n\n portal_contact_email = preferences.MyPreferences.portal_contact_email\n\n\nIf you've specified the ``preferences.context_processors.preferences_cp`` as a `TEMPLATES `_ you can similarly access your preferences within templates through the ``preferences`` variable, i.e.::\n\n {{ preferences.MyPreferences.portal_contact_email }}\n\nAuthors\n=======\n\nPraekelt Consulting\n-------------------\n* Shaun Sephton\n* Euan Jonker\n* Hedley Roos\n\nChangelog\n=========\n\nnext\n----\n#. Django 2 and Python 3.5 compatibility. Django 1.9 is no longer supported.\n\n\n1.0.0\n---\n#. Support Django 1.11, 2.0 & 2.1 remove support for Django < 1.11\n#. Support Python 2.7, 3.5-3.7\n#. Added tests coverage\n\n0.2\n---\n#. Move to tox for tests.\n#. Django 1.9 to 1.11 support. The official minimum supported version is 1.9.\n\n0.1\n---\n#. Cleanup and fixing of tests courtesy of senyor.\n#. Rewrite distinct query so it works with Oracle backend.\n\n0.0.6\n-----\n#. Better packaging.\n\n0.0.5 (2011-08-17)\n------------------\n#. Added sites support.\n#. Added unittests.\n\n0.0.4 (2011-08-11)\n------------------\n#. Cleanup. Docs polish.\n\n0.0.3\n-----\n#. Spelling correction, thanks tiktuk.\n\n0.0.2\n-----\n#. Doc update to indicate importance of placing url include before admin url include.\n\n0.0.1\n-----\n#. First super alpha release.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/praekelt/django-preferences", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-preferences", "package_url": "https://pypi.org/project/django-preferences/", "platform": "", "project_url": "https://pypi.org/project/django-preferences/", "project_urls": { "Homepage": "http://github.com/praekelt/django-preferences" }, "release_url": "https://pypi.org/project/django-preferences/1.0.0/", "requires_dist": null, "requires_python": "", "summary": "Django app allowing users to set app specific preferences through the admin interface.", "version": "1.0.0" }, "last_serial": 4711146, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "ae1e69ad709b6a905a0f5a87eff564dd", "sha256": "9cf25e7fd80718d5a35120b290060bde59e8dbc145b03c4bcc1a7fda5de8b1ef" }, "downloads": -1, "filename": "django_preferences-0.0.1-py2.5.egg", "has_sig": false, "md5_digest": "ae1e69ad709b6a905a0f5a87eff564dd", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 6585, "upload_time": "2010-06-14T19:33:15", "url": "https://files.pythonhosted.org/packages/63/66/e8598134070839df49d0e7e8191ed2bdcea45331c2ba7dd6b224d70ea5c1/django_preferences-0.0.1-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "26b2fd2c1a8607afb19f093b47ae5c06", "sha256": "2a0e8d63a798d258effa900ef0d71198e710ecbb849828756a4fdb0ea4bedd89" }, "downloads": -1, "filename": "django_preferences-0.0.1-py2.6.egg", "has_sig": false, "md5_digest": "26b2fd2c1a8607afb19f093b47ae5c06", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 6576, "upload_time": "2010-06-14T19:31:02", "url": "https://files.pythonhosted.org/packages/e2/4b/3cb10302487d254ada8f534820b2b7e60cbb11f6821b3e3694065e3b16bd/django_preferences-0.0.1-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "4ad23a31afa45495857b011e2ea41cf9", "sha256": "ba4dadd59238fc905ba4b73c599a1aac9788655c4311d01b61600830ef251dff" }, "downloads": -1, "filename": "django-preferences-0.0.1.tar.gz", "has_sig": false, "md5_digest": "4ad23a31afa45495857b011e2ea41cf9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3639, "upload_time": "2010-06-14T19:31:40", "url": "https://files.pythonhosted.org/packages/7a/a1/1a12708839b1eaa23ebd93e6355a62369cc8ebe39a4bcc62c2c99b4f1c32/django-preferences-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "2f3fba95c856a2ecebbe49ec308b1728", "sha256": "67493c3706004b27955a571bf485cf768a7005bd325000273188a3557eac0f58" }, "downloads": -1, "filename": "django_preferences-0.0.2-py2.5.egg", "has_sig": false, "md5_digest": "2f3fba95c856a2ecebbe49ec308b1728", "packagetype": "bdist_egg", "python_version": "2.5", "requires_python": null, "size": 6702, "upload_time": "2010-06-15T16:14:01", "url": "https://files.pythonhosted.org/packages/8d/0a/4f02aa390ccb1dcd85af625d6fc876655208bd8686cea54e3598f07e1b86/django_preferences-0.0.2-py2.5.egg" }, { "comment_text": "", "digests": { "md5": "9cbb6bd6b2cf229ae852876e349fcde4", "sha256": "2067576bf47b5124935f6052182ae289ca1e455cf5bc1d26242c587d52e37619" }, "downloads": -1, "filename": "django_preferences-0.0.2-py2.6.egg", "has_sig": false, "md5_digest": "9cbb6bd6b2cf229ae852876e349fcde4", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 6692, "upload_time": "2010-06-15T16:13:09", "url": "https://files.pythonhosted.org/packages/25/d4/b282461eaa3b586950a0178c0a2506060cc4d648d7c06f58d1be89c34ee7/django_preferences-0.0.2-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "05ee061412f428f6f44f05530737c7c3", "sha256": "6f699317fac8f71296ed6f112fb7a6908378f3b490196418e91019a3e0489f6a" }, "downloads": -1, "filename": "django-preferences-0.0.2.tar.gz", "has_sig": false, "md5_digest": "05ee061412f428f6f44f05530737c7c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3800, "upload_time": "2010-06-15T16:12:44", "url": "https://files.pythonhosted.org/packages/26/cd/c44c5f8c8224966aecc85143b7b91082e1c8521020c4c3d727abf5a6802f/django-preferences-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b668cf978158f0a5f7411cae5516b9f7", "sha256": "030f27c7bfad809eb7b7c2a2ca62b88716810347c55e1de2c1917f262d4b5f7d" }, "downloads": -1, "filename": "django_preferences-0.0.3-py2.6.egg", "has_sig": false, "md5_digest": "b668cf978158f0a5f7411cae5516b9f7", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 6735, "upload_time": "2011-03-15T08:15:15", "url": "https://files.pythonhosted.org/packages/37/e3/e1766e85e7ab5a9f945f21c0572840dd22213f3096465cb438c61d587f77/django_preferences-0.0.3-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "a4ebb2e6e77413c496e7fcb94b92b4c3", "sha256": "5887929975af8abd8e9c52580efb5cfe706fa6454787d1a099e485c0001137d1" }, "downloads": -1, "filename": "django-preferences-0.0.3.tar.gz", "has_sig": false, "md5_digest": "a4ebb2e6e77413c496e7fcb94b92b4c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3808, "upload_time": "2011-03-15T08:15:16", "url": "https://files.pythonhosted.org/packages/2b/4d/cd3296eeafcaebfe130f0e8cb7850023a3b425a977c56872ea0b2ccd739c/django-preferences-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "af14cdb5fe2e272e335f1a5fa6b25d87", "sha256": "45d7f00d91e282ad4ab3550866ffdea646d2a2c0dd079aed05a05532e2627073" }, "downloads": -1, "filename": "django_preferences-0.0.4-py2.6.egg", "has_sig": false, "md5_digest": "af14cdb5fe2e272e335f1a5fa6b25d87", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 6887, "upload_time": "2011-08-11T13:18:55", "url": "https://files.pythonhosted.org/packages/c8/2b/9907563be1fae288dc8dd31c06210f589d37a7f8a8a96682e222e3d02f88/django_preferences-0.0.4-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "b01ed6ada4b3f170ca7c107075d15337", "sha256": "851c1e64e3a53123fb3d496e64c16fef988b067c23cc34b7cdd6e6806d880047" }, "downloads": -1, "filename": "django_preferences-0.0.4-py2.7.egg", "has_sig": false, "md5_digest": "b01ed6ada4b3f170ca7c107075d15337", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 6874, "upload_time": "2011-08-11T13:18:36", "url": "https://files.pythonhosted.org/packages/7d/dd/224f0fc8636521d2c716d0b01d8d8252a46169222167f89b926e4483cad0/django_preferences-0.0.4-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "f00d6399733e7133e16717846a0149b3", "sha256": "5eb1be01a7a468b929cd5351324809feaf484d1f5ecda5932df2a25796fd5885" }, "downloads": -1, "filename": "django-preferences-0.0.4.tar.gz", "has_sig": false, "md5_digest": "f00d6399733e7133e16717846a0149b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4030, "upload_time": "2011-08-11T13:18:38", "url": "https://files.pythonhosted.org/packages/08/6f/2dd6ae141013c978d223a367d3e6516d727c081e413f4f504a4692bb6b37/django-preferences-0.0.4.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "09b5ecceb63558f582fbfc08c7b51221", "sha256": "e395120211d0ded0e2e76fc2310c0b300553846665dfeb3700be924a1c14bbe9" }, "downloads": -1, "filename": "django_preferences-0.0.5-py2.6.egg", "has_sig": false, "md5_digest": "09b5ecceb63558f582fbfc08c7b51221", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 15226, "upload_time": "2011-08-17T15:28:51", "url": "https://files.pythonhosted.org/packages/65/ff/74d6d86fdbb2af85b7a9033bda83e6e16b4d9723b60d15ad6798ca63ccda/django_preferences-0.0.5-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "3b80d8a03f7517c3b5e313737541cd7f", "sha256": "435d1ae6d48f96521e23d136b47a8475156a57b542917d0fac13565cf32aede4" }, "downloads": -1, "filename": "django_preferences-0.0.5-py2.7.egg", "has_sig": false, "md5_digest": "3b80d8a03f7517c3b5e313737541cd7f", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 15188, "upload_time": "2011-08-17T15:28:38", "url": "https://files.pythonhosted.org/packages/b5/d6/58ff594ffc18d8b95c800950e799501d4f9e3be174c8698cb77d63ea00e4/django_preferences-0.0.5-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "49b35d1238b64598c6a854646c01bf86", "sha256": "e78c58c0b247dc0fd82e4e04791d518539abfb259ae3fd4c8f89e03af43d6a22" }, "downloads": -1, "filename": "django-preferences-0.0.5.tar.gz", "has_sig": false, "md5_digest": "49b35d1238b64598c6a854646c01bf86", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6969, "upload_time": "2011-08-17T15:28:40", "url": "https://files.pythonhosted.org/packages/af/8f/727b6375f7fb6375103b055bf8abc5e5f84f7c23918f2dcfab3b39091ce0/django-preferences-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "e2e1b2a27da6fb0d869fb52d85e0dd07", "sha256": "22b20f2eb78facf8f41fc30b32dabc0a67de609f9db70d60d2396b1931b2f3d1" }, "downloads": -1, "filename": "django_preferences-0.0.6-py2.6.egg", "has_sig": false, "md5_digest": "e2e1b2a27da6fb0d869fb52d85e0dd07", "packagetype": "bdist_egg", "python_version": "2.6", "requires_python": null, "size": 15597, "upload_time": "2012-05-08T11:10:48", "url": "https://files.pythonhosted.org/packages/18/26/67a15d94b3ffbb0906b9559159be5e661b9befec20ecddc521e1311cf335/django_preferences-0.0.6-py2.6.egg" }, { "comment_text": "", "digests": { "md5": "f596e7f735df728497e0f046bd1f0c9a", "sha256": "ec8e8be37b04098e323df2f97380f7e7f8f4b286c59c2c42ba5dad8de5137492" }, "downloads": -1, "filename": "django_preferences-0.0.6-py2.7.egg", "has_sig": false, "md5_digest": "f596e7f735df728497e0f046bd1f0c9a", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 15555, "upload_time": "2012-05-08T11:11:02", "url": "https://files.pythonhosted.org/packages/7b/ee/8579f68f9f05a3222a4e63cf6c81504c1cf1994ee07196b88beb59321693/django_preferences-0.0.6-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "b7acc777ec68ec02b00aa5886f235a1a", "sha256": "f6f484b5e1ed395ae84c6ed51e466b445c087fad15670ad0b35622a40c3ce7c2" }, "downloads": -1, "filename": "django-preferences-0.0.6.tar.gz", "has_sig": false, "md5_digest": "b7acc777ec68ec02b00aa5886f235a1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7091, "upload_time": "2012-05-08T11:10:51", "url": "https://files.pythonhosted.org/packages/9b/a5/7967edd076ed50d04126966578d6bf4fda554576223931f039d9a1d046d9/django-preferences-0.0.6.tar.gz" } ], "0.1": [ { "comment_text": "", "digests": { "md5": "f36d23730c26d8b2fa39cff3cbf63249", "sha256": "76eec15e5240e7e899e1a6491da22903ea7636fb05f5c9dad39d8197d010b720" }, "downloads": -1, "filename": "django_preferences-0.1-py2.7.egg", "has_sig": false, "md5_digest": "f36d23730c26d8b2fa39cff3cbf63249", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 16077, "upload_time": "2015-04-27T19:18:16", "url": "https://files.pythonhosted.org/packages/85/fd/e5e585c279baca595ae8cd644e14df7076f200ef3c547204e2ade2ba2ced/django_preferences-0.1-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "48b5eda0e8019bfbd3e5a621040232a4", "sha256": "4246d20a04992c2139631a1129e19c4643dd7f1f22b32d08a37edd6b3d817ba0" }, "downloads": -1, "filename": "django-preferences-0.1.tar.gz", "has_sig": false, "md5_digest": "48b5eda0e8019bfbd3e5a621040232a4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10657, "upload_time": "2015-04-27T19:18:11", "url": "https://files.pythonhosted.org/packages/1f/a0/0063d210b980cff110c57562fc1c15ff97e74968123c1f1d139af1b387a2/django-preferences-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "26d1ca00af42a884c80789d29a842308", "sha256": "bab17d3dc59e3d78179c528227bea31526bdf87a0ac05de697066d0a63ebc1c1" }, "downloads": -1, "filename": "django_preferences-0.2-py2.7.egg", "has_sig": false, "md5_digest": "26d1ca00af42a884c80789d29a842308", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 25679, "upload_time": "2017-07-06T13:13:20", "url": "https://files.pythonhosted.org/packages/94/a8/43aaa060511053ff16ca8ad362738e7cb397e3776c810cd9f9e50a0e5fb0/django_preferences-0.2-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "fcd45c6638c636f0283fc131c227a9cc", "sha256": "7a45eefac852354411f56caac2c15c0d2c19be08e117e5b896752302ba4d5b17" }, "downloads": -1, "filename": "django-preferences-0.2.tar.gz", "has_sig": false, "md5_digest": "fcd45c6638c636f0283fc131c227a9cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12582, "upload_time": "2017-07-06T13:13:17", "url": "https://files.pythonhosted.org/packages/24/b0/39aaf801b2c0ba70bf7a571b1ba21df09e5349a3b563a786feecd118284f/django-preferences-0.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "0fe490621e49ec7aad7057dfd8c5b05a", "sha256": "1601c932da2eafb464bfc0ded6d69371d2c610870a7f27c81769a50f8da522e9" }, "downloads": -1, "filename": "django-preferences-1.0.0.tar.gz", "has_sig": false, "md5_digest": "0fe490621e49ec7aad7057dfd8c5b05a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23262, "upload_time": "2018-12-20T12:45:31", "url": "https://files.pythonhosted.org/packages/1e/f7/8a70ef59880fe4ed36a5cd6255026dcab824287438f69f03b7ba96d28d2a/django-preferences-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0fe490621e49ec7aad7057dfd8c5b05a", "sha256": "1601c932da2eafb464bfc0ded6d69371d2c610870a7f27c81769a50f8da522e9" }, "downloads": -1, "filename": "django-preferences-1.0.0.tar.gz", "has_sig": false, "md5_digest": "0fe490621e49ec7aad7057dfd8c5b05a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23262, "upload_time": "2018-12-20T12:45:31", "url": "https://files.pythonhosted.org/packages/1e/f7/8a70ef59880fe4ed36a5cd6255026dcab824287438f69f03b7ba96d28d2a/django-preferences-1.0.0.tar.gz" } ] }