Bonjour,

Je suis à la recherche d'une solution pour que je puisse inséré un produit appartenant à plusieurs catégories sans modifier la structure existante ;)

Ma config actuel avec une relation hasBelongs

table product id, category_id, name
table categories id, parent_id, lft, rght, name

Qu'est ce que je dois changer pour que je puisse avoir le choix du multi-select ?

et ce n'est pas le hasAndBelongsToMany (nn) que je cherche si non je vais me taper la modification de plus de 4000 articles.

Merci

2 réponses


Lartak
Réponse acceptée

Bonsoir.

et ce n'est pas le hasAndBelongsToMany (nn) que je cherche si non je vais me taper la modification de plus de 4000 articles.

C'est pourtant obligatoire, le champ category_id dans la table product, n'est correct que s'il n'appartient qu'à une seule catégorie, par contre, si un produit peut appartenir à plusieurs catégories, il est nécessaire d'avoir une table qui fasse la jointure entre la table products et la table categories.
Vous ne pouvez pas faire une jointure multiple pour un enregistrement, avec un seul champ lié à l'enregistrement dans la même table.
Donc, si vous voulez joindre un enregistrement à plusieurs enregistrements d'une autre table, vous n'avez pas vraiment d'autre choix que de faire une table de jointure pour les deux tables.

agencep
Auteur

Bonsoir

Ben alors j'ai pas le choix je dois me taper les 4000 articles ....