Guide pas à pas pour installer et configurer Django avec PostgreSQL sur Windows.

Configurer un environnement Django avec PostgreSQL Introduction

Ce tutoriel vous guide dans la mise en place d'un projet Django utilisant PostgreSQL comme base de données. Cette configuration est idéale pour développer des applications web performantes et évolutives.

Prérequis Python 3 installé PostgreSQL installé et en cours d'exécution Pip (gestionnaire de paquets Python) 1. Créer un environnement virtuel

Dans votre terminal :

python -m venv venv

Activez l'environnement :

Windows venv\Scripts\activate Linux / macOS source venv/bin/activate 2. Installer Django et le pilote PostgreSQL pip install django psycopg2-binary

Vérifiez l'installation :

django-admin --version 3. Créer un projet Django django-admin startproject monprojet cd monprojet 4. Créer une base de données PostgreSQL

Connectez-vous à PostgreSQL :

CREATE DATABASE monprojet; CREATE USER django_user WITH PASSWORD 'motdepasse'; GRANT ALL PRIVILEGES ON DATABASE monprojet TO django_user; 5. Configurer Django

Ouvrez le fichier :

monprojet/settings.py

Remplacez la configuration de la base de données par :

DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'monprojet', 'USER': 'django_user', 'PASSWORD': 'motdepasse', 'HOST': 'localhost', 'PORT': '5432', } } 6. Appliquer les migrations python manage.py migrate

Si tout est correctement configuré, Django créera automatiquement les tables nécessaires dans PostgreSQL.

  1. Créer un compte administrateur python manage.py createsuperuser

Suivez les instructions pour définir un nom d'utilisateur et un mot de passe.

  1. Lancer le serveur python manage.py runserver

Accédez ensuite à :

http://127.0.0.1:8000

Interface d'administration :

http://127.0.0.1:8000/admin Conclusion

Vous disposez maintenant d'un environnement Django connecté à PostgreSQL. Vous pouvez commencer à développer vos modèles, vues et applications tout en bénéficiant d'une base de données robuste et adaptée aux projets professionnels.