Une alternative a PHP : creer un site en python avec Django

Bonjour à tous,

Je voulais vous présenter une solution technique alternative au php pour la réalisation d’un site internet : Python + Django. C’est une solution complète et très séduisante, tout particulièrement au niveau des plugins de la communauté qui sont d’une qualité exceptionnelle et qui permettent un développement ultra rapide des premières fonctionnalités (Création de compte, facebook connect, Géo localisation…).

Pour ce qui ne connaissent pas Django, voici le lien de leur site :. Tout est écrit en anglais mais je vous recommande de commencer par ce tutoriel officiel :

https://docs.djangoproject.com/en/1.3/intro/tutorial01/

Pourquoi se lancer dans Django et python? Voici les principaux avantages que j’ai rencontré :

  • Fini les {} ou begin/end, tout repose sur l’indentation de votre code. Cela peut sembler pénible au départ mais finalement on s’y fait bien et c’est même très agréable.
  • Le système de template est tout simplement ludique et plaisant. Par exemple je peux déclarer un block comme ceci dans mon layout :
{% block extrahead %}

{% endblock %}

et si dans ma vue courante, par exemple celle qui liste des annonces immobilières je mets un :

{% block extrahead %}{% endblock %}

alors automatiquement ce code sera réinjecté dans mon layout à l’endroit de déclaration du block “extraheader”. Magique non?

  • La documentation sur le site de Django est très bien expliquée et on peut quasiment se sortir de tous les problèmes juste en lisant dedans.
  • Les messages d’erreurs sont très explicites
  • La partie administration a été très travaillée, elle est facilement personnalisable et par défaut elle reste très belle et accessible.

Il y a tout de même certains points plus négatifs :

  • Globalement, l’approche vers Python/Django demande une compréhension générale de la programmation plus avancée.
  • L’installation sur apache est plus difficile que celle de PHP
  • Il faut quelques connaissances en Debian/Apache pour faire une installation propre
  • La configuration n’est pas toujours évidente.

En conclusion:
Je recommanderais donc pas Django pour les débutants mais pour des utilisateurs plus confirmés qui veulent un peu voir autre chose et tester une nouvelle technologie.