Mysql
 sql >> Base de données >  >> RDS >> Mysql

Erreur SQL sur la pagination

Il est toujours sage d'activer le mode de débogage pour voir toutes les erreurs possibles en détail. Vous venez de partager la partie d'erreur sql à partir de laquelle il est clair que la table prévue n'a pas le champ "sender_id" . Je suppose que vous avez activé le mode débogage. Jetez donc d'abord un coup d'œil à la requête générée. Ensuite, vous trouverez quelle table la requête essaie de creuser.

Si votre requête fait référence à la bonne table, vous pouvez essayer ceci :

public function index_admin(){
        $this->set('title_for_layout', 'Relationships');
        $this->set('stylesheet_used', 'homestyle');
        $this->set('image_used', 'eBOXLogoHome.png');   
        $this->layout='home_layout';

        //retrieve Account Id of current User       
        $accountid=$this->Auth->user('account_id');

        //Conditions
        $conditions=array(
        "OR"=> array(
            'Relationship.sender_id' => $accountid,
            'Relationship.receiver_id' => $accountid)
        );
        App::import('Model', 'Relationship');
        $objRelationship = new Relationship();
        $this->paginate = array( "conditions" => $conditions, 'limit' => 10 );
        $relationships = $this->paginate( $objRelationship );

        $compName = $this->Account->field('account_name', array('id' => 'Relationship.id'));

        $this->set('accountid', $accountid); 
        $this->set('relationship', $this->paginate());  
        $this->set('compName', $compName);
}