Quelques outils utiles pour django sous Ubuntu - "Debugging"

Django logo bugTravaillant désormais depuis plus de neuf mois avec le framework django sur le prochain logiciel Opquast, je me permets, aujourd'hui, de fournir très modestement quelques retours d'expérience. Naturellement, toutes les étapes, les logiciels présentés ci-dessous sont compatibles avec la distribution Ubuntu. Pour MacOsX de simples adaptations semblent suffisantes, enfin pour Windows je vous laisse canoter. Cet article présente l'ensemble des outils me permettant de "débugger", tester plus rapidement du code "django / python". 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é.

Le terminal python de base

De base, Django fournit un outil, certes basique mais ô combien utile, le "TERMINAL". Ce dernier se lance via la commande python manage.py shell, uniquement si django est installé . Via l'interpréteur intéractif, le shell ou terminal, vous pouvez tout tester, instanciation de classe, concaténation de chaine, boucle for, conditions... Très rapidement on se rend compte qu'il manque : la coloration syntaxique pour s'y retrouver, un historique des commandes précédemment tapées, les bons imports initiaux, l'indentation automatique, la complétion. Bref on est face au bon vieux terminal type MS-DOS (allez, ...en un peu mieux).

Installation ipython

Il manque l'indentation automatique, l'historique, la complétion des objets, la coloration, aucun problème installez ipython via synaptic ou via la bonne vieille commande habituelle sudo aptitude install ipython. Aucune configuration supplémentaire l'interpréteur python est automatiquement "amélioré" tout comme l'interpréteur django, en effet ce dernier repose sur celui de python.

Mise à jour de django shell vers django shell_plus

  1. Télécharger le pack contenant shell_plus à l'adresse django-command-extensions
  2. Dézipper l'archive précédemment récupérés
  3. Via un terminal, tapez la commande sudo python setup.py install (cela fonctionne si django a été installé de la même manière, ou est situé dans /usr/local/lib/python2.6/dist-packages/)

Shell_plus

Au lancement de la commande l'ensemble des modules déclarés dans votre fichier de configuration settings.py sont automatiquement chargés, voir screenshot ci-dessus. On gagne un temps incroyable

Connaître les attributs et les méthodes d'un objet

Cette solution est très simple, mais pour l'instant je n'ai pas trouvé mieux.

  1. Démarrez un terminal django : python manage.py shell_plus
  2. Instancier votre objet : article = Article()
  3. Saisissez article. puis appuyer sur la touche "Tabulation de votre clavier", le terminal liste ainsi l'ensemble des attributs, méthodes disponibles

Shell plus , listing des attributs

Guake : Un terminal toujours sous la main

Enfin pour aller plus loin, je vous renvoie à l'installation de l'excellent terminal guake via sudo apt-get install guake. Guake via le raccourci "F12" est disponible depuis n'importe quel bureau, hautement pratique, surtout si comme moi, vous utilisez plusieurs bureaux.

Vus : 1361
Publié par Samuel Martin : 24