Accueil / Blog / Métier / Archives / Django, gestion des settings d'application simplifiée

Django, gestion des settings d'application simplifiée

Par Mathieu Leplatre publié 29/07/2011

Je reprends ici la méthode présentée par Nicolas et je la couple avec mon petit EasyDict pour alléger l'utilisation ! Comme ses snippets sont drôles, je ne les change pas !

Paramètres par défault de l'application

On a juste un constructeur à ajouter par rapport à ce qu'avait présenté NiKo (avec EasyDict installé).

# apps/my_app/__init__.py
from django.conf import settings
from easydict import EasyDict

app_settings = EasyDict(dict({
    'FOO': 42,
    'ENABLE_CHUCK_NORRIZ_MODE': False,
}, **getattr(settings, 'MY_APP_CONFIG', {})))

Surcharge dans le projet

# settings.py
MY_APP_CONFIG = {
    'ENABLE_CHUCK_NORRIZ_MODE': True,
}

Utilisation !

EasyDict transforme les clés du dict en attributs, on accède aux settings en toute simplicité !

# foo/bar.py
from my_app import app_settings

print app_settings.FOO # 42
# apps/my_app/utils.py
from . import app_settings

if app_settings.ENABLE_CHUCK_NORRIZ_MODE:
    print 'Chuck Norriz is watching you'
else:
    print 'Dance dance, little lamb'
ABONNEZ-VOUS À LA NEWSLETTER !
Voir aussi
Python : Bien configurer son environnement de développement Python : Bien configurer son environnement de développement 07/12/2015

Comment utiliser les bonnes pratiques de développement Python.

Formation Django initiation à Toulouse du 13 au 15 mars Formation Django initiation à Toulouse du 13 au 15 mars 26/01/2017

Entrez de plain-pied dans l'univers de Django aux côtés de développeurs ayant une expérience de ...

Retour sur la PyConFr 2016 Retour sur la PyConFr 2016 18/10/2016

Nous étions présents à Rennes pour PyConFr 2016. Voici notre compte-rendu à chaud.

Wagtail: How to use the Page model and its manager (part 2) Wagtail: How to use the Page model and its manager (part 2) 08/08/2016

The Page model has several methods specific to Wagtail. This is also the case of its manager. We ...

Wagtail : How to make your own content type models (part 1) Wagtail : How to make your own content type models (part 1) 29/07/2016

We are used to initialize our CMS directly from a web interface, often including lots of complex ...