Bonjour j'ai un soucis assez bizarre je n'arrive pas a afficher mes commentaires dans mon controller posts action view.

Quand je fais un debug dans ma vue de <?php echo debug($post'Comment']);?>

Il m'affiche bien mon tableau:
Array
(
[0] => Array
(
[id] => 1
[user_id] => 1
[post_id] => 1
[comment] => looooool
[video_id] =>
[image] =>
[created] => 2011-11-26 13:56:19
)

)

Mais quand je fais : <?php echo $post'Comment']'user_id']?> il me dit qu'user_id est indéfini pareil pour created et comment.
Notice (8): Undefined index: created [APP\View\Posts\view.ctp, line 38]

Donc j'ai du louper un truc gros comme un camion mais pour le coup la je ne vois pas.

Ps: j'ai bien mit que comment est un belongto de post et que post hasmany comment.

7 réponses


Tu utilise un foreach pour afficher tes commentaires car vu la structure du tableau c'est ce qu'il faudrait.

Sinon sans foreach ça va être dur vu que tu as un array dans un array dans un array.

Hotgeart
Auteur

oui cependant j'ai noté ceci: <?php foreach ($post as $post): ?>
Ne sachant pas quoi mettre

Essaye ceci:

foreach($post'Comment'] as $comment) :
     echo $comment'user_id'];
endforeach;
Hotgeart
Auteur

Effectivement merci ça marche.
Cependant pour le moment mes posts sont affichés avec 'user_id' mais une fois que je voudrais mettre l'username. Est ce que ça ne va pas crée des problèmes d'avoir ce foreach ainsi?

Non je pense pas.

Hotgeart
Auteur

Ok merci j’attends d'autres réponses car logiquement $post'Comment'] appelle le model comment.

Salut ensuite tu dois faire un autre foreach pour lister tes commentaires il n'y a pas de problème la dedans.