Hello,
Il te faut une clause IN si tu veux le faire sur plusieurs catégories.
http://book.cakephp.org/3.0/en/orm/query-builder.html#automatically-creating-in-clauses
Bonjour, je cherche a afficher une liste de produits associé à plusieurs catégories.
Actuellement :
CategoriesTable.php
ProdtuctsTable.php
Tables SQL
categories
categories_products
products
debug d'un produit
(Le produit a bien N catégories)
Je ne sais pas comment effectuer une requête sur plusieurs categories_id
ex :
Si vous avez une piste pour filter les produits avec en paramètre un nombre N de catégories je prend
Merci
10 réponses
Salut, Xeta, merci pour ta réponse, cependant je n'arrive toujours pas a afficher uniquement les produits qui sont dans la sommes des 4 catégories , ma requête est probablement fausse :
As tu la possibilité de m'aiguiller pour faire proprement cette requête ?
Merci
Tu es sûr que ceci $data[3]['category_id'] affiche bien l'id de la catégorie ? Car sa parait bizarre d'utiliser une typographie de type array alors que les résultats sont des entities.
Yep! :)
$data[3]['category_id'] c'est juste un tableau fait à la main pour les tests
Et ceci ?
Nop!
Error: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'Categories.id' in 'where clause'
Config:
Tables SQL
categories
categories_products
`products``
CategoriesTable.php
ProdtuctsTable.php
C'est ce qui me semble étonnant
Ah mais j'avais mal vue, il faut faire ta requête sur la table de jointure categories_products.
Quel est la structure de cette table ?
categories_products
Par contre je n'ai pas créé de model pour cette table je dois en créer un ?
Non pas besoin en faite.
Test voir ceci :
Nop toujours pas ! Merci pour ton aide,
là pour le coups la requête m'affiche la totalité des produits..
Je sèche complètement