Installation de django-debug-toolbar sur Ubuntu / Nginx

Django-debug-toolbar fait partie des outils indispensables du développeur django. C'est un formidable outil permettant de traquer les entrées-sorties de votre application ( requêtes http, requêtes bdd, sessions...). Comme à chaque fois, il existe plusieurs solutions pour installer des paquets python. Cet article présente l'installation de la django-debug-toolbar depuis les dépôts Ubuntu. Aussi, il vous sera grès d'adapter le passage "configuration" selon le type d'installation que vous avez effectué.En effet, les fichiers ne s'installent pas tous au même endroit.

Attention, l'ensemble des manipulations qui vont suivre peuvent rendre votre système d'exploitation Ubuntu instable. L'utilisation du compte admistrateur (commande sudo...) suscitent des risques pour lequel je décline toute responsabilité.

Prérequis

  • Utiliser Ubuntu 10.10 (non testé sur version antérieure)
  • Utiliser Django 1.0 ou supérieur
  • Comprendre et savoir configurer Nginx

Installation de django-debug-toolbar

  • Depuis le terminal : sudo aptitude install python-django-debug-toolbar
  • Depuis synaptic : python-django-debug-toolbar

Remarque 1: Notez que la vie est bien faite, tous les paquets python dans les dépôts ubuntu commencent par "python-xxxx". Lorsque vous installez depuis easy_install (qui est une autre méthode d'installation) le paquet "schtroupff" sachez que vous pouvez toujours essayer de trouver dans synaptics le paquet "python-schtroupff".

Remarque 2: Utiliser les paquets depuis les dépôts officiels d'Ubuntu est une très bonne chose pour garantir l'intégrité, la stabilité de votre système. En revanche, vous n'aurez pas toujours les dernières versions des logiciels/plugins... Pour les paquets python/django j'aurais tendance à dire qu'il n'est pas crucial de passer par les dépôts Ubuntu, il suffit d'encapsculer tout ceci dans un environnement virtuel. Mais ceci est un autre débat.

Configuration de django-debug-toolbar via Nginx

Comme à l'accoutumé dès que vous souhaitez activer un paquet python pour votre application django, il suffit de renseigner la partie INSTALLED_APPS de votre fichier de configuration settings.py La django-debug-toolbar ne déroge pas à la règle. Ajoutez 'django-debug-toolbar'.

Malheureusement, cette dernière s'active, mais aucun style css, aucun évenement js n'est disponible !!! ce qui limite, avouez-le, l'intérêt du plugin.

Explication du "pourquoi ça marche pô" : Les fichiers sont correctement installés mais les chemins vers ces derniers sont erronés. Nous devons écrire des règles spéciales côté nginx.

Localiser l'installation de la django-debug

Idem il existe mille solutions, voici la plus innocente pour localiser les fichiers d'installation :

  1. Ouvrir Synaptics
  2. Sur le paquet python-django-debug-toolbar clic droit "Propriétés"
  3. Choisir l'onglet "Fichiers installés"
  4. Bingo, dans mon cas tout se trouve dans : /usr/share/pyshared/debug_toolbar
  5. Remplacer dans le fichier /usr/share/pyshared/debug_toolbar/toolbar/loader.py L15 l'occurence " __debug__" par "debug_toolbar"

Créer une règle nginx

Voici ce que vous devez rajouter dans la partie server{} de votre fichier de configuration nginx.

location /debug_toolbar/ {
                root /usr/share/pyshared/debug_toolbar/media/;
        }

Désormais tout lien de votre application contenant "/debug_toolbar/" pointera automatiquement vers "/usr/share/pyshared/debug_toolbar/media/debug_toolbar/"

Django debug toolbar

Vus : 1525
Publié par Samuel Martin : 24