Dynamic-Mess.com


"The world is a dynamic mess of jiggling things..."

Les bases de Django

Article posté le 25-09-2014 dans la catégorie Django

Django est un framework utilisant le language Python. Ce framework est dédié au monde du Web : en clair, il vous permet de développer de puissants sites Internet, de manière propre et structurée.

A la manière d'un framework PHP comme Symfony ou Zend, le site est découpé en modules, qui sont en fait des applications, des sous ensembles de votre site. Si elles sont bien conçues, ces sous-parties sont réutilisables ailleurs, avec d'autres sites.

Il est intéressant que certains sites "renommés" utilisent Django, comme :

Django est le plus connu et le plus utilisé des frameworks web utilisant Python. Il dispose d'une très grande communauté d'utilisateurs, ayant réussi à séduire bon nombre de développeurs. Je vous averti cependant, comme dans tous les languages, il y a des guégerres puériles, ou des pseudo-stars (autoproclamées bien sûr) du développement qui vous diront que tel ou tel langage est plus rapide, et tout ça et tout ça...

La vérité? Que ce soit sous Python ou sous PHP, un bon site vient surtout de sa structure, de la qualité de son développement, de son serveur. La language joue peu, à part dans certains cas comme le Java.

Fonctionnement du framework Django

Django utilise un architecture-pattern proche de MVC : MVT. MVT signifie "Modèle - Vue - Template". En effet, une particularité de Django est de gérer lui-même la partie contrôleur. Le framework se charge donc, via les règles de routages définies, de charger la vue correspondante. C'est cette dernière qui va lire dans le modèles et va générer un rendu HTML à partir d'un template. Ce n'est qu'une fois ceci fait, que le framework lancera l'affichage de la page (donc du contenu généré).

Pour le développeur, cela signifie au final gérer 4 parties :

  1. Les routes
  2. Les modèles
  3. Les templates
  4. Les vues, qui font le lien entre les modèles et les templates

Ces trois derniers points sont les trois éléments de notre modèle MVT, que le développeur devra implémenter. Un peu d'explications :
On peut aussi noter que si le template utilisé est un simple fichier au format HTML, le modèle est un peu comme dans les autres frameworks : il s'agit d'une classe où chaque attribut correspondra à un champ dans la base de données. Et c'est Django lui-même qui se chargera de créer la fameuse table dans votre base, et de faire la liaison entre le modèle et la table! Concrètement, cela veut dire plus besoin de faire de requêtes pour accéder à vos données! Et pour terminer, la vue est une simple fonction qui acceptera des paramètres, par exemple les paramètres passés en URL. La vue ira alors lire dans la base l'élément correspondant, pour générer le template pour affichage à l'internaute.

2- Installer Django

Je ne vais pas métendre sur cette partie en fait, ou peut être que je la remplirai avec le temps. Quelque soit l'OS que vous utilisez, il y a une manière différente. Pour ma part j'utilise ici Ubuntu, une distribution de Linux. Or, pour Linux, il existe aussi plusieurs possibilités. Je vais juste vous montrer comment j'ai fait, sinon il vous reste un peu de doc, comme ici :

Bon dans mon cas (après avoir installé Python), voici ce que j'ai fait : je suis allé sur le deuxième lien ci-dessus, et ai téléchargé la dernière version au format .zip. J'ai ensuite décompressé l'archive dans un répertoire nommé Django, se trouvant lui-même dans un dossier Projets, qui se trouve lui même dans mon dossier User.

/Home/Projets/Django

Avec la console, je me positionne dans ce dossier Django. Et ensuite, je tape :

sudo python setup.py install

et l'installation se fait toute seule...

Voilà, c'est tout pour les bases de Django! A bientôt pour la suite !


Tweet
comments powered by Disqus