CakePHP如何从另一个表中获取值

时间:2011-04-14 00:07:43

标签: php cakephp cakephp-1.3

我有一个问题,我有3个表: 用户, 图片(user_id), 评论(user_id,image_id),

现在从图像视图我想从表评论中“翻译”user_id。怎么做? 我试图创建帮助器,但视图助手没有看到$ this-> tableName变量或我在那里有错误。 我知道我可以在Image视图中访问Comment表($ image ['Comment'])所以我有user_id我想转换为用户名但是怎么做?

谢谢,

3 个答案:

答案 0 :(得分:0)

我不确定这一点,但您可能会发现改变model recursive会使其可用。在视图中调试$ image数组以确保:

<?php debug($image) ?>

答案 1 :(得分:0)

查看可包含的行为。 http://book.cakephp.org/view/1323/Containable

当您搜索评论时,请执行以下操作

$this->Comment->find('all',array('contain'=>'User'));

这将返回您的评论以及您需要的用户详细信息。将此信息传递到您的视图中,而不是尝试在您的视图中检索它。

答案 2 :(得分:0)

您应该有权访问“用户”和“注释”表。我更喜欢pr($images);可能更容易阅读,但用户的数据应该在那里。

foreach ($images as $image){
    pr($image['User']['fname']);
}