mirror of
https://github.com/R0m1k3/noteflow.git
synced 2026-10-11 17:29:37 +02:00
Fix: Chargement automatique SQLite/PostgreSQL
CORRECTIF URGENT: L'application chargeait toujours SQLite même avec PostgreSQL configuré, causant une perte apparente de toutes les données. Ajout de database-loader.js qui détecte automatiquement: - DB_TYPE=postgres → PostgreSQL - DATABASE_URL=postgresql:// → PostgreSQL - Sinon → SQLite Tous les routes et services mis à jour pour utiliser database-loader au lieu de charger directement database.js. Les données ne sont PAS perdues, elles sont dans PostgreSQL. L'application se reconnectera correctement après redémarrage. Fichiers modifiés: - config/database-loader.js (nouveau) - server.js - routes/*.js (11 fichiers) - services/*.js (2 fichiers)
This commit is contained in:
13 files changed
+34
-12
No files matched your search
@@ -0,0 +1,22 @@
|
||||
// Chargeur automatique de base de données (SQLite ou PostgreSQL)
|
||||
const logger = require('./logger');
|
||||
|
||||
// Détecter le type de base de données
|
||||
const DB_TYPE = process.env.DB_TYPE || 'sqlite';
|
||||
const DATABASE_URL = process.env.DATABASE_URL;
|
||||
|
||||
logger.info(`Configuration de base de données: ${DB_TYPE}`);
|
||||
|
||||
// Charger le module approprié
|
||||
let databaseModule;
|
||||
|
||||
if (DB_TYPE === 'postgres' || DATABASE_URL?.startsWith('postgresql://')) {
|
||||
logger.info('Chargement de la configuration PostgreSQL');
|
||||
databaseModule = require('./database-postgres');
|
||||
} else {
|
||||
logger.info('Chargement de la configuration SQLite');
|
||||
databaseModule = require('./database');
|
||||
}
|
||||
|
||||
// Exporter toutes les fonctions du module chargé
|
||||
module.exports = databaseModule;
|
||||
@@ -4,7 +4,7 @@ const router = express.Router();
|
||||
const bcrypt = require('bcrypt');
|
||||
const { body, validationResult } = require('express-validator');
|
||||
|
||||
const { getOne } = require('../config/database');
|
||||
const { getOne } = require('../config/database-loader');
|
||||
const { generateToken, authenticateToken } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { google } = require('googleapis');
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ const path = require('path');
|
||||
const fs = require('fs');
|
||||
const { body, validationResult } = require('express-validator');
|
||||
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const { getOne } = require('../config/database');
|
||||
const { getOne } = require('../config/database-loader');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
// Cache pour les modèles (rafraîchi toutes les heures)
|
||||
|
||||
@@ -3,7 +3,7 @@ const express = require('express');
|
||||
const router = express.Router();
|
||||
const Parser = require('rss-parser');
|
||||
const axios = require('axios');
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ const express = require('express');
|
||||
const router = express.Router();
|
||||
const Parser = require('rss-parser');
|
||||
const axios = require('axios');
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
// Routes de gestion des paramètres
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@ const express = require('express');
|
||||
const router = express.Router();
|
||||
const { body, validationResult } = require('express-validator');
|
||||
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ const router = express.Router();
|
||||
const bcrypt = require('bcrypt');
|
||||
const { body, validationResult } = require('express-validator');
|
||||
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const { authenticateToken, requireAdmin } = require('../middleware/auth');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ const path = require('path');
|
||||
const fs = require('fs');
|
||||
|
||||
const logger = require('./config/logger');
|
||||
const { initDatabase } = require('./config/database');
|
||||
const { initDatabase } = require('./config/database-loader');
|
||||
|
||||
// Créer l'application Express
|
||||
const app = express();
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Service RSS NOUVEAU - Architecture simple et robuste
|
||||
const Parser = require('rss-parser');
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
const parser = new Parser({
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Service RSS NOUVEAU - Architecture simple et robuste
|
||||
const Parser = require('rss-parser');
|
||||
const { getAll, getOne, runQuery } = require('../config/database');
|
||||
const { getAll, getOne, runQuery } = require('../config/database-loader');
|
||||
const logger = require('../config/logger');
|
||||
|
||||
const parser = new Parser({
|
||||
|
||||
Reference in new issue
Block a user