THELIA Forum

Welcome to the THELIA support and discusssion forum

Announcement

Rejoignez la communauté sur le Discord Thelia : https://discord.gg/YgwpYEE3y3

Offline


Bonjour, je veux étendre la table product c'est pourquoi j'ai créé un module dans lequel j'ajoute une table product_complement, je veux qu'à chaque création d'un produit créer automatique une instance du product_complement qui prend l'id du produit de telle sorte que ça sera logiquement une seule table, comment faire?Est-ce que j'utilise les actions et les events du product ou je crée d'autres pour ce nouveau module?

Offline


Il te faut créer un event listener qui s'abonne à l'évènement TheliaEvents::PRODUCT_CREATE, avec une priorité < 128. Tu pourras alors créer une nouvelle entrée dans ta table quand un nouveau produit est créé. Tu trouvera l'id du produit dans l'objet Product qui se trouve dans le ProductEvent qui t'es passé.

Si tu crée une clef étrangère avec DELETE CASCADE vers la table produit, la suppression dans ta table sera assurée par mySQL sans que tu n'aie rien à faire. Mais tu peux aussi gérer ça manuellement en t'abonnant à TheliaEvents::PRODUCT_DELETE.


OpenStudio Toulouse