mirror of
https://github.com/R0m1k3/LogiFlow.git
synced 2026-10-21 05:58:23 +02:00
Prevent duplicate user entries by handling empty emails
Fixes an issue where creating or editing users with empty email fields would violate a unique constraint in the database. The solution involves updating user routes to treat empty email strings as NULL, adjusting validation schemas, and providing a script to clean existing data. Replit-Commit-Author: Agent Replit-Commit-Session-Id: a8a78c07-e900-425c-a577-5b4c5894379d Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/1957c339-2757-4d1f-8e92-e9f71a1ce58e/a8a78c07-e900-425c-a577-5b4c5894379d/zoO1uWT
This commit is contained in:
1 parent
c77ea88e9d
commit
6a2e5aad05
5 files changed
+73
-22
No files matched your search
@@ -54,7 +54,11 @@ Si l'interface affiche "Aucun utilisateur trouvé" :
|
||||
### Problème Création d'Utilisateur
|
||||
|
||||
#### Erreur "duplicate key value violates unique constraint users_email_key"
|
||||
Cette erreur survient quand plusieurs utilisateurs ont un email vide (`""`) car PostgreSQL traite les chaînes vides comme des valeurs uniques.
|
||||
Cette erreur survient lors de la **création** ou **édition** d'utilisateur quand plusieurs utilisateurs ont un email vide (`""`) car PostgreSQL traite les chaînes vides comme des valeurs uniques.
|
||||
|
||||
**Symptômes** :
|
||||
- Création d'utilisateur échoue avec erreur `Key (email)=() already exists`
|
||||
- Édition d'utilisateur échoue avec la même erreur lors de la sauvegarde
|
||||
|
||||
**Solution** :
|
||||
1. Exécutez le script de correction :
|
||||
@@ -62,7 +66,7 @@ Cette erreur survient quand plusieurs utilisateurs ont un email vide (`""`) car
|
||||
psql $DATABASE_URL -f fix-duplicate-empty-email.sql
|
||||
```
|
||||
|
||||
2. Redéployez l'application (le code a été corrigé pour utiliser `NULL` au lieu de `""`)
|
||||
2. Redéployez l'application (le code a été corrigé pour utiliser `NULL` au lieu de `""` dans les routes de création ET d'édition)
|
||||
|
||||
#### Tests de Création
|
||||
1. **Test Manuel** : Utilisez `test-create-user-production.js`
|
||||
|
||||
Reference in new issue
Block a user