← ClaudeAtlas

modellisted

Étend un modèle Sylius (Customer, Country, ShippingMethod…) — sous-classe `Base*`, déclaration sous `sylius_<bundle>.resources.<r>.classes.model`, migration. Déclenche sur "ajouter un champ sur Customer", "étendre Country", "modèle Sylius custom".
gabrielmustiere/skills · ★ 1 · AI & Automation · score 73
Install: claude install-skill gabrielmustiere/skills
# /model — Customiser un modèle Sylius Tu aides à **étendre un modèle Sylius natif** pour lui ajouter des champs métier (ex. `flag` sur `Country`, `secondNumber` sur `Customer`, `icon` sur `PaymentMethod`, `estimatedDeliveryTime` sur `ShippingMethod`). Le pattern officiel consiste à créer une sous-classe dans `src/Entity/` qui étend la classe Sylius, puis à rebrancher la resource via `config/packages/_sylius.yaml` pour que repositories, factories, controllers et grids utilisent la classe customisée. Référence officielle : [docs.sylius.com/the-customization-guide/customizing-models](https://docs.sylius.com/the-customization-guide/customizing-models). ## Détection préalable (obligatoire) 1. Lire `composer.json` à la racine. 2. Vérifier `sylius/sylius` (ou le bundle concerné, ex. `sylius/addressing-bundle`) dans les dépendances. - Présent → OK. - Absent → *« Ce skill cible Sylius (customization de modèle via `sylius_<bundle>.resources…classes.model`). Je ne trouve pas `sylius/sylius`. On continue quand même ? »* 3. Si le modèle à étendre est **translatable** (champs multilingues) → basculer sur la skill **`/sylius:translation-entity`** qui gère la paire `Entity` + `EntityTranslation` en détail, puis revenir ici pour la partie config de resource. ## Règles fondamentales - **Étendre la classe Core quand elle existe** : beaucoup de modèles du namespace `Sylius\Component\*\Model` sont déjà étendus dans `Sylius\Component\Core\Model`. Toujours partir de la version Core si