Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| web:api:prisma-fastify [2026/03/04 01:58] – jcheron | web:api:prisma-fastify [2026/03/04 11:26] (Version actuelle) – [6. Prisma Client] jcheron | ||
|---|---|---|---|
| Ligne 69: | Ligne 69: | ||
| ----- | ----- | ||
| - | ==== 4. Configuration Prisma ==== | + | |
| + | ==== 2. Configuration Prisma avec SQLite ==== | ||
| + | |||
| + | Modifier `prisma/ | ||
| + | |||
| + | <code prisma> | ||
| + | datasource db { | ||
| + | provider = " | ||
| + | url = env(" | ||
| + | } | ||
| + | |||
| + | generator client { | ||
| + | provider = " | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ----- | ||
| + | |||
| + | ==== 3. Configuration du fichier .env ==== | ||
| + | |||
| + | < | ||
| + | DATABASE_URL=" | ||
| + | </ | ||
| + | |||
| + | Explication : | ||
| + | |||
| + | * Prisma va créer automatiquement un fichier `dev.db` | ||
| + | * Le fichier sera situé à la racine du projet | ||
| + | |||
| + | ----- | ||
| + | |||
| + | ==== 4. Lancer la migration ==== | ||
| + | |||
| + | <sxh bash> | ||
| + | npx prisma migrate dev --name init | ||
| + | </ | ||
| + | |||
| + | Résultat : | ||
| + | |||
| + | * Fichier dev.db créé | ||
| + | * Tables générées | ||
| + | * Client Prisma généré | ||
| + | |||
| + | Aucune base externe nécessaire. | ||
| + | |||
| + | ----- | ||
| + | |||
| + | ==== 4.a Structure projet avec SQLite ==== | ||
| + | |||
| + | < | ||
| + | fastify-prisma-api/ | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ----- | ||
| + | |||
| + | ==== 4.b Configuration Prisma | ||
| Fichier `.env` : | Fichier `.env` : | ||
| Ligne 79: | Ligne 139: | ||
| Modifier `prisma/ | Modifier `prisma/ | ||
| - | < | + | < |
| datasource db { | datasource db { | ||
| provider = " | provider = " | ||
| Ligne 120: | Ligne 180: | ||
| <sxh ts> | <sxh ts> | ||
| - | import { PrismaClient } from " | + | import {PrismaClient} from " |
| export const prisma = new PrismaClient() | export const prisma = new PrismaClient() | ||