Bien le bonjour,

J'ai créer une messagerie sur mon site où je récupère via les messages que s'échangent les utilisateurs, une conversation. Pour chaque conversation, j'aimerai trier les messages selon un champ "created".

Ma question est suivante : Est il possible de créer plusieurs tableaux conditions dans un find() ? En effet je dois trouver tous les messages dont l'id de l'expéditeur devient pour un autre message celui du destinataire.
Ainsi je pourrais les trier grâce à un order.

Vous comprendrez mieux avec bout de code :

$conv = $this->Message->find('all', array(
                    or => array(
                    'conditions' => array(
                        "and" => array(
                            'Message.exp_id' => $exp_id,
                            'Message.dest_id' => $this->Auth->User('id')
                        )
                    ),
                     'conditions' => array(
                        "and" => array(
                            'Message.exp_id' => $this->Auth->User('id'),
                            'Message.dest_id' => $exp_id
                        )
                    )
                  )           
                ));    

$this->set('conversation', $conv);

2 réponses


Grafikart
Réponse acceptée

Tu peux

find('all',array(
    'conditions' => array(
            'OR' => array(
                   array('PREMIERE SERIE DE CONDITION'),
                   array('SECONDE SERIE DE CONDITION')
            )
    )
);

Excellent :) Merci pour la syntaxe, ça fait quelques semaines qu'on suit pas mal des tutos que tu as fait en cakePHP avec un pote. Ton travail nous est d'une grande aide. Merci de m'avoir répondu..!

Bonne continuation !!