array(
'conditions' => array('Model.field' => $thisValue), //array of conditions
'recursive' => 1, //int
'fields' => array('Model.field1', 'DISTINCT Model.field2'), //array of field names
'order' => array('Model.created', 'Model.field3 DESC'), //string or array defining order
'group' => array('Model.field'), //fields to GROUP BY
'limit' => n, //int
'page' => n, //int
'offset' => n, //int
'callbacks' => true //other possible values are false, 'before', 'after'
)
Les parametres du array sont tous ceux que tu peut utiliser dans ton find
Faut savoir une chose Cakephp utilise un ORM donc chaque élément est mappé en entité relationnel
Donc tu doit créer un Model pour chacune des Entité que tu utilise pour ton cas je dirai "User" & "Challenge" le model "Defy" c'est un peu bizarre surtout au niveau du nom. Je dirai qu'il y a un petit problème au niveau du nom .
Bref tu doit te dire chose suivant
Un "User" peut avoir combien de "Challenge" ?
Un "Challenge" peut avoir combien de "User" ?
quand tu aura répondu à ça dans tes models tu as des variables définie pour ça que tu renseigne par des array
one to one hasOne A user has one profile.
one to many hasMany A user can have multiple recipes.
many to one belongsTo Many recipes belong to a user.
many to many hasAndBelongsToMany Recipes have, and belong to many ingredients.
Donc pour finir tu dois penser PHP et ne pas penser au requête SQL, c'est en gros se que doit faire un ORM.