docs: section migrations au readme
This commit is contained in:
1 parent
2069b66f9b
commit
ea460db104
1 file changed
+22
-3
@@ -23,7 +23,25 @@ php -m | grep -i sqlite # doit afficher pdo_sqlite et/ou sqlite3
|
|||||||
php -S localhost:8000 -t public
|
php -S localhost:8000 -t public
|
||||||
```
|
```
|
||||||
|
|
||||||
La base `database/api_tube.sqlite` et son schéma sont créés automatiquement au premier appel.
|
La base `database/api_tube.sqlite` et son schéma sont créés automatiquement au premier appel (via les migrations).
|
||||||
|
|
||||||
|
## Migrations
|
||||||
|
|
||||||
|
Les migrations sont des fichiers SQL numérotés dans `database/migrations/`, appliqués une seule fois et tracés dans la table `migrations`.
|
||||||
|
|
||||||
|
Elles sont exécutées automatiquement à la connexion à la base. Pour les appliquer manuellement (hors serveur web) :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
php database/migrate.php
|
||||||
|
```
|
||||||
|
|
||||||
|
Ajouter une migration :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# fichier database/migrations/002_ajout_colonne.sql
|
||||||
|
echo "ALTER TABLE links ADD COLUMN visible INTEGER DEFAULT 1;" > database/migrations/002_ajout_colonne.sql
|
||||||
|
php database/migrate.php
|
||||||
|
```
|
||||||
|
|
||||||
## Endpoints
|
## Endpoints
|
||||||
|
|
||||||
@@ -65,10 +83,11 @@ public/
|
|||||||
index.php # point d'entrée unique
|
index.php # point d'entrée unique
|
||||||
.htaccess # réécriture vers index.php
|
.htaccess # réécriture vers index.php
|
||||||
src/
|
src/
|
||||||
Database.php # connexion PDO SQLite (+ création du schéma)
|
Database.php # connexion PDO SQLite + exécution des migrations
|
||||||
LinkRepository.php # CRUD SQL
|
LinkRepository.php # CRUD SQL
|
||||||
JsonExporter.php # écriture de data.json
|
JsonExporter.php # écriture de data.json
|
||||||
LinkController.php # routage, validation, orchestration
|
LinkController.php # routage, validation, orchestration
|
||||||
database/
|
database/
|
||||||
schema.sql # schéma de la table links
|
migrate.php # runner de migrations (CLI)
|
||||||
|
migrations/ # fichiers SQL versionnés
|
||||||
```
|
```
|
||||||
Reference in new issue
Block a user