Je pense que la doc répondra a tes questions
CF Cake doc
Vous pouvez utiliser matching() quand vous souhaitez donner des contraintes au model primaire selon les associations. Par exemple, vous voulez charger tous les articles qui ont un tag spécifique. Pour plus de détails sur matching(), consultez Filtrer par les Données Associées.
Bonjour à tous,
Je bosse sur un site collaboratif avec CakePHP 3 et je bloque sur la génération d'une requête un peu complexe :
En SQL ça donne :
SELECT *
FROM songs, skills_songs
WHERE songs.style_id
IN (SELECT styles_users.style_id FROM styles_users WHERE user_id = $mon_utilisateur)
AND skills_songs.skill_id
IN (SELECT skills_users.skill_id FROM skills_users WHERE user_id = $mon_utilisateur)
GROUP BY songs.id;
Je veux récupérer les morceaux qui ont leur style en commun avec les styles appréciés par l'utilisateur, et les compétences associées au morceau qui correspondent à celles de l'utilisateur ? On me suit toujours ? big_smile
La requête en elle même fonctionne, cependant impossible de m'en sortir avec le "query builder" ... J'ai essayé pas mal de solutions, parcouru la doc', mais pas facile.
Pour l'instant voici ce que j'ai tenté ... !
Si cela peut aider à comprendre mon erreur !