AccroCBio/EDITEUR_ADMIN.md
Louis Mazin 7677667d0b nice
2026-10-13 18:32:32 +02:00

40 lines
2.7 KiB
Markdown

# Éditeur visuel AccroCbio
L'administration éditoriale fonctionne depuis **le frontend** : `http://ADRESSE-DU-SERVEUR:1028/admin` ou `https://votre-domaine/admin` (si nginx dirige cette URL vers React).
L'URL `:1029/admin/` correspond toujours à **Django Admin**, un outil différent.
## Première mise en route
1. Installer / redémarrer les deux conteneurs avec le `docker-compose.yml` habituel.
2. Dans le conteneur backend Django, exécuter `python manage.py migrate` (nouvelle migration `education/0003_sitecontent.py`).
3. Créer un compte administrateur si nécessaire : `python manage.py createsuperuser` (ou utiliser un utilisateur Django existant avec `is_staff=True`).
4. Ouvrir `http://IP:1028/admin` et s'identifier.
5. Dans l'onglet **Pages**, choisir une page : le **mode édition** s'active automatiquement. Cliquer sur les petits crayons à côté des textes et sur **Changer l'image** près des illustrations. **Enregistrer** publie le changement, **Restaurer** remet la valeur par défaut.
6. Utiliser les onglets **Ressources / Avis / Offres / Messages** pour créer, modifier, masquer et supprimer les éléments de la base.
7. **Terminer** désactive les crayons ; **Tableau de bord** revient au panneau d'administration.
## Informations techniques
- Le frontend reste sur le port **1028** et le backend Django sur le port **1029** ; les fichiers Docker d'origine sont conservés.
- Le `vite.config.js` transmet automatiquement `/api/` au service Docker `backend:1029`. En production derrière nginx, veiller à transmettre `/api/` à Django et toutes les routes du frontend, notamment `/admin`, à React.
- Les images téléversées (PNG, JPG, WebP ; maximum 5 Mo) sont conservées dans `backend/media/editor/`. Sauvegarder ce dossier avec la base de données. Les liens HTTPS vers des images externes fonctionnent aussi.
- Les textes modifiés sont enregistrés dans la table `education_sitecontent` (différentiel par rapport au texte du code). L'édition ne nécessite ni recompilation React ni redémarrage Docker.
- Le mot de passe n'est pas stocké dans le navigateur. Le jeton d'accès est conservé uniquement durant l'onglet ouvert (`sessionStorage`) et est contrôlé côté API. Utiliser **HTTPS** en dehors du réseau local.
- Les modifications des liens n'acceptent que les chemins internes (`/contact`) ou les URL HTTPS.
- Le texte de la page et les illustrations peuvent être édités ; il ne s'agit pas encore d'un constructeur de sections glisser-déposer. Les composants React/shadcn et les mises en page restent définis dans le code.
## Vérifications
Tests Django (dans le conteneur backend avec sa configuration de test) :
```bash
python manage.py test education
```
Compilation du frontend :
```bash
npm run build
```