Files
afrov2/instructions-base-de-donnees.md
2026-04-08 14:46:10 +02:00

2.9 KiB

Instructions pour initialiser la base de données Prisma

Ce document décrit comment configurer et initialiser la base de données PostgreSQL avec Prisma pour le SaaS Afropreunariat.

Prérequis

  1. Avoir Node.js installé (pour utiliser les commandes Prisma).
  2. Avoir Docker et Docker Desktop (ou équivalent) installés si vous souhaitez lancer la base de données localement, OU une base de données PostgreSQL distante (Supabase, Neon, etc.).

Étape 1 : Démarrer la base de données avec Docker (Local)

Si vous souhaitez utiliser la base de données PostgreSQL en local, un fichier docker-compose.yml est fourni avec le projet.

  1. Ouvrez votre terminal à la racine du projet (afropreunariat).
  2. Exécutez la commande suivante pour lancer la base de données en arrière-plan :
docker compose up -d

Votre base de données PostgreSQL tourne maintenant sur le port 5432 avec l'utilisateur admin et le mot de passe adminpassword.

Étape 2 : Installer les dépendances Prisma

Dans le terminal, à la racine du projet, exécutez les commandes suivantes :

npm install prisma --save-dev
npm install @prisma/client

Étape 3 : Configurer les variables d'environnement

  1. Créez un fichier .env à la racine de votre projet (si ce n'est pas déjà fait).
  2. Ajoutez la variable DATABASE_URL contenant la connexion à votre base PostgreSQL :
# Connexion locale via le Docker Compose fourni :
DATABASE_URL="postgresql://admin:adminpassword@localhost:5432/afropreunariat_dev?schema=public"

# Exemple avec Supabase ou Neon (si base distante)
# DATABASE_URL="postgresql://postgres:[MOT_DE_PASSE]@db.[ID_PROJET].supabase.co:5432/postgres"

Remarque : Ne commitez jamais votre fichier .env sur git.

Étape 3 : Initialiser la base de données

La modélisation de la base se trouve dans prisma/schema.prisma. Pour appliquer ce schéma à votre base de données réelle et créer les tables, exécutez :

npx prisma db push

Note : Si vous souhaitez utiliser les migrations pour garder un historique des changements, utilisez plutôt npx prisma migrate dev --name init.

Étape 4 : Générer le client Prisma

Afin d'utiliser Prisma dans le code TypeScript (pour faire des requêtes au back-end), vous devez générer le client.

npx prisma generate

Étape 5 : Visualiser les données (Optionnel)

Prisma fournit une interface web locale pour voir et manipuler le contenu de la base :

npx prisma studio

Récapitulatif : Les modèles intégrés

  • User : Pour gérer les visiteurs, administrateurs et entrepreneurs.
  • Business : Pour les entreprises, leurs informations, contacts et métriques du "Mois de l'entrepreneur".
  • Offer : Produits ou Services liés à un Business.
  • BlogPost : Les articles du blog.
  • Interview : Les vidéos et articles d'interviews.