Mettre automatiquement DEBUG sur False en production pour Django

L’avantage des fichiers de settings en pur Python, c’est qu’on peut faire des trucs mignons comme:

import socket
 
if socket.gethostname() == 'monsupersite.com':
    DEBUG = False
else:
    DEBUG = True

Articles similaires:

  1. Log des requêtes SQL faites par l’ORM Django en temps réel
  2. Explication de code: des mixins et des décorateurs de méthode pour Django
  3. Changer la valeur d’un champs de toutes les entrées de la base en Django
  4. Travailler moins pour gagner plus, en 15 minutes avec Python fabric
  5. Simuler un cookie avec Mechanize en python

flattr this!

2 comments

  1. Pas bête cette méthode ! Mais généralement j’ai un fichier de configuration bien spécifique pour la prod et le dév (pas la même base de données, etc.) qui n’est pas réécrit lors d’un déploiement. Et bien-sûr le DEBUG est dans ce fichier de conf.

    On peut également simplifier comme ceci :

    DEBUG = socket.gethostname() != 'monsupersite.com'
  2. Tout à fait, au final sur les gros projets on peut se retrouver avec presque une dizaine de fichiers de settings.

    C’est juste que j’aime avoir une fichier de settings de base avec des valeurs par défaut saines, ça facilite toujours le boulot.

    J’aime bien le one liner :-)

Flux RSS des commentaires

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

Jouer à mario en attendant que les autres répondent