Architecture
Commandes Symfony
Reference des commandes Symfony metier disponibles dans TrickSpin.
Commandes Symfony
Cette page recense les commandes metier exposees par le backend.
Pour afficher la liste complete dans le conteneur back :
php bin/console list app
Depuis la racine du projet, vous pouvez aussi executer une commande via Make :
make sf cmd='app:challenges:weekly --no-interaction'
Des raccourcis Make dedies existent aussi pour les commandes frequentes :
make import-grabs
make import-tricks
make challenges-weekly
make challenges-monthly
make generate-combo-slugs
make generate-category-slugs
make promote-admin pseudo=monPseudo
Vue d'ensemble
| Commande | Usage principal | Documentation detaillee |
|---|---|---|
app:import-grabs | Reimport complet des grabs depuis CSV | Import des grabs |
app:import-tricks | Import non destructif des tricks depuis CSV | Import des tricks |
app:challenges:weekly | Selection de la figure de la semaine | Automatisation des defis |
app:challenges:monthly | Selection des defis mensuels par categorie | Automatisation des defis |
app:generate-combo-slugs | Backfill des slugs manquants sur les combos | Cette page |
app:generate-category-slugs | Backfill des slugs manquants sur les categories | Cette page |
app:user:promote-admin | Ajout du role admin a un utilisateur | Cette page |
Generation de slugs
Les slugs sont generes automatiquement a la sauvegarde des entites. Ces commandes servent surtout au rattrapage de donnees existantes (backfill).
app:generate-combo-slugs
But : generer un slug uniquement pour les combos qui n'en ont pas.
Exemples :
# depuis la racine du projet
make sf cmd='app:generate-combo-slugs'
# commande Docker directe
docker compose --profile dev exec back php bin/console app:generate-combo-slugs
Comportement :
- les combos avec slug existant sont ignores
- les combos sans slug sont completes
- la commande est idempotente (rejouable sans effet de bord)
app:generate-category-slugs
But : generer un slug uniquement pour les categories qui n'en ont pas.
Exemples :
# depuis la racine du projet
make sf cmd='app:generate-category-slugs'
# commande Docker directe
docker compose --profile dev exec back php bin/console app:generate-category-slugs
Comportement :
- les categories avec slug existant sont ignorees
- les categories sans slug sont completees
- la commande est idempotente (rejouable sans effet de bord)
Gestion des roles admin
app:user:promote-admin
But : ajouter ROLE_ADMIN a un utilisateur a partir de son pseudo.
Exemples :
# depuis la racine du projet
make sf cmd='app:user:promote-admin monPseudo'
# commande Docker directe
docker compose --profile dev exec back php bin/console app:user:promote-admin monPseudo
Comportement :
- echoue si le pseudo n'existe pas
- ne duplique pas
ROLE_ADMINsi l'utilisateur est deja admin - n'enleve aucun role existant