Bonjours,
j'ai un petit soucis avec les association de mes tables.
Dans le model Post (qui représente les news de mon site) :
public $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'Post.user_id',
),
);
Et dans mon controller :
$posts = $this->Post->find('all');
debug($posts);
die;
Mais pas la moindre trace de mon utilisateur, même en indiquant les champs à récupérer :
$posts = $this->Post->find('all', array('fields' => array('User.username')));
Merci par avance pour votre aide ! :)
Ajoute cette ligne dans tes model Post et User
public $actsAs = array('Containable');
et dans ton controller
$posts = $this->Post->find('all', array('contain' => array('User')));
Cela devrait fonctionner
Oh merci !
Par contre pour ceux qui ont eu le même problème, surtout ne pas mettre :
public $belongsTo = array(
'User' => array(
'foreignKey' => 'Post.user_id',
),
);
mais :
public $belongsTo = array(
'User' => array(
'foreignKey' => 'user_id',
),
);