- en
- Language: fr
Comment installer Django¶
Ce document a pour but de vous préparer à faire fonctionner Django.
Installation de Python¶
Django étant un applicatif Web Python, il a donc besoin de Python. Voir Quelle version de Python puis-je utiliser avec Django ? pour plus de détails.
Obtenez la dernière version de Python à l’adresse https://www.python.org/download/ ou par l’intermédiaire du gestionnaire des paquets de votre système.
Django sur Jython
Si vous utilisez Jython (une implémentation de Python pour machine Java), vous devrez suivre quelques étapes supplémentaires. Voyez Fonctionnement de Django sur Jython pour les détails.
Python sur Windows
Si vous êtes débutant avec Django et que vous utilisez Windows, cette documentation peut être utile : Comment installer Django avec Windows.
Installation de Apache et mod_wsgi¶
Si vous voulez juste faire quelques expériences avec Django, passez directement à la section suivante ; Django inclut un serveur Web léger utilisable pour les tests, il n’est donc pas utile de configurer Apache tant que vous ne souhaitez pas déployer Django en production.
Si vous souhaitez utiliser Django sur un site en production, utilisez Apache avec mod_wsgi. mod_wsgi peut fonctionner dans deux modes : un mode intégré et un mode démon. Dans le mode intégré, mod_wsgi est comparable à mod_perl, il intègre Python dans Apache et charge le code Python en mémoire au démarrage du serveur. Le code reste en mémoire tout au long du cycle de vie du processus Apache, ce qui apporte des améliorations de performance significatives en comparaison d’autres configurations. En mode démon, mod_wsgi délègue la gestion des requêtes à un processus démon indépendant. Ce processus peut fonctionner sous un nom d’utilisateur différent de celui du serveur Web, ce qui peut améliorer la sécurité ; d’autre part, le processus peut être redémarré sans devoir redémarrer tout le serveur Web Apache, ce qui peut simplifier la mise à jour de code. Consultez la documentation de mod_wsgi pour déterminer le mode qui vous conviendra le mieux. Assurez-vous que Apache est installé et que son module mod_wsgi est activé. Django fonctionne avec toute version d’Apache qui prend en charge mod_wsgi.
Consultez Comment utiliser Django avec mod_wsgi pour plus d’informations sur la façon de configurer mod_wsgi après l’avoir installé.
Si vous n’avez pas la possibilité d’utiliser mod_wsgi, ne désespérez pas : Django prend en charge beaucoup d’autres scénarios de déploiement. L’un d’entre eux est uWSGI ; il fonctionne très bien avec nginx. De plus, Django respecte la spécification WSGI (PEP 3333) ce qui permet de le faire fonctionner sur diverses plates-formes serveurs.
Mise en route de la base de données¶
Si vous prévoyez d’utiliser la fonctionnalité base de données de Django, vous devez faire le nécessaire pour qu’une base de données soit fonctionnelle. Django sait gérer plusieurs serveurs de bases de données différents ; officiellement, il prend en charge PostgreSQL, MySQL, Oracle et SQLite.
Si vous développez un projet simple ou quelque chose que vous ne prévoyez pas de déployer dans un environnement de production, SQLite est généralement l’option la plus simple car elle n’exige pas de serveur séparé. Cependant, SQLite comporte beaucoup de différences en comparaison d’autres bases de données et si vous travaillez sur un projet un peu conséquent, il est recommandé de développer avec la même base de données qui sera utilisée en production.
En plus des bases de données prises en charge officiellement, il existe des moteurs externes à Django qui permettent d’utiliser d’autres bases de données avec Django.
En plus du moteur de base de données, il est aussi nécessaire de vérifier que les liaisons Python pour la base de données sont installées.
Si vous utilisez PostgreSQL, vous avez besoin du paquet psycopg2. Vous pouvez consultez les notes sur PostgreSQL pour plus de détails.
Si vous utilisez MySQL, vous aurez besoin d’une API de driver de BDD comme mysqlclient. Voir notes pour le backend MySQL pour plus de détails.
Si vous utilisez SQLite, il est recommandé de lire les notes du moteur SQLite.
Si vous utilisez Oracle, vous aurez besoin d’une copie de cx_Oracle, mais veuillez lire les notes spécifiques pour le moteur de base de données Oracle pour les détails concernant les versions prises en charge d’Oracle et de cx_Oracle.
Si vous utilisez un moteur externe non officiel, consultez la documentation qui l’accompagne pour d’éventuels contraintes supplémentaires.
Si vous pensez utiliser la commande de Django manage.py migrate pour créer automatiquement les tables de base de données pour vos modèles (après la fin de l’installation de Django et la création d’un projet), vous devez vous assurer que Django possède les permissions de créer et modifier les tables dans la base de données que vous utilisez ; si vous pensez créer manuellement les tables, il suffit alors d’attribuer à Django les permissions SELECT, INSERT, UPDATE et DELETE. Après avoir créé un utilisateur de base de données possédant ces permissions, il s’agira d’indiquer les détails de connexion dans le fichier de réglages de votre projet, voir DATABASES pour les détails.
Si vous utilisez l’infrastructure de test de Django pour tester les requêtes de bases de données, Django aura besoin des permissions nécessaires pour créer une base de données de test.
Désinstallation des anciennes versions de Django¶
Si vous mettez à jour votre installation de Django à partir d’une version précédente, il est nécessaire de d’abord désinstaller l’ancienne version de Django avant d’installer la nouvelle.
Si l’ancienne version de Django a été installée avec pip ou easy_install, l’installation de la nouvelle version en utilisant le même outil (pip ou easy_install) provoquera automatiquement la désinstallation de la version précédente, vous n’avez donc rien à faire de particulier.
Si l’ancienne version de Django a été installée avec python setup.py install, sa désinstallation se résume à supprimer le répertoire django du répertoire site-packages de votre installation Python. Pour trouver le répertoire à supprimer, vous pouvez exécuter la commande suivante dans le shell d’un terminal (pas dans un shell Python interactif) :
$ python -c "import sys; sys.path = sys.path[1:]; import django; print(django.__path__)"
Installation du code de Django¶
Les instructions d’installation divergent légèrement selon que vous installez un paquet de votre distribution, que vous téléchargez la dernière version officielle ou que vous récupériez la dernière version en développement.
C’est facile, quelle que soit la méthode choisie.
Installation d’une version officielle avec¶
C’est la façon recommandée d’installer Django.
Installez pip. La manière la plus simple est d’utiliser l’installeur pip autonome. Si votre distribution contient déjà une version installée de pip, il pourrait être nécessaire de la mettre à jour si elle est trop ancienne (dans ce cas, vous le verrez bien car l’installation ne fonctionnera pas).
Jetez un œil à virtualenv et virtualenvwrapper. Ces outils fournissent des environnements Python isolés qui sont bien plus pratiques que d’installer des paquets au niveau de tout le système. Ils permettent aussi d’installer des paquets sans avoir besoin de privilèges administrateurs. Le tutoriel de contribution vous guide pour la création d’un environnement virtualenv avec Python 3.
Après avoir créé et activé un environnement virtuel, saisissez la commande pip install Django dans le terminal.
Installation d’un paquet de la distribution¶
Parcourez les notes spécifiques aux distributions pour vérifier que votre plate-forme/distribution propose des paquets ou installeurs officiels de Django. Les paquets fournis par les distributions permettent généralement de profiter de l’installation automatique des dépendances et de mises à niveau plus faciles ; toutefois, ces paquets correspondent rarement aux dernières versions de Django.
Installation de la version de développement¶
Suivi du développement de Django
Si vous décidez d’utiliser la dernière version de développement de Django, il est recommandé de surveiller attentivement l’activité de développement de même que les notes de publication de la version à venir. Cela vous aidera à vous tenir au courant de toute nouvelle fonctionnalité que vous pourriez exploiter ou des modifications que vous devrez effectuer dans votre code lors de la mise à jour de votre copie de Django (pour les versions stables, toute modification nécessaire est documentée dans les notes de publication).
Si vous aimeriez pouvoir mettre à jour occasionnellement votre version de Django avec les dernières corrections et améliorations, suivez ces instructions :
Vérifiez que Git est installé et que vous pouvez lancer ses commandes depuis un terminal (saisissez git help à l’invite de commande pour le tester).
Créez une copie de travail de la branche principale de développement de Django comme ceci :
$ git clone git://github.com/django/django.git
Un répertoire django sera créé dans le répertoire actuel.
Vérifiez que l’interpréteur Python peut charger le code de Django. La façon la plus pratique de faire cela est d’utiliser virtualenv, virtualenvwrapper, et pip. Le tutoriel de contribution vous guide pour la création d’un environnement virtualenv avec Python 3.
Après avoir configuré et activé l’environnement virtuel, exécutez la commande suivante :
$ pip install -e django/
Ceci rendra le code Django importable et mettra aussi à disposition la commande utilitaire django-admin. En d’autres mots, vous serez fin prêt !
Lorsque vous souhaitez mettre à jour votre copie du code source de Django, lancez simplement la commande git pull à partir du répertoire django. Quand vous faites cela, Git télécharge automatiquement toutes les modifications.