cakephp - 查看来自多个表的数据

时间:2013-07-25 08:01:39

标签: php cakephp cakephp-2.0 cakephp-2.1

我正在开发Cakephp 2.x.我的应用程序中有两个表:'Images'和'Audios'...我有一个视图,其中我想显示按日期排序的图像和视频...不知道如何做到这一点...因为主要问题是在Cakephp,如果你想显示图像我们这样做

echo $data['Image']['filename'];

对于音频,我这样做

echo $data['Audio']['filename'];

我们必须具体指定模态名称..但现在我不想这样做..我想按日期排序随机显示..例如,如果今天有人上传了一张图片,昨天上传了一个音频..所以数据在视图页面上必须如此显示

audio.mp3 ,image.jpg .....so on
像这样......

我不想写这样的

foreach($datas as $data){
    echo $data['Image']['filename'];
    echo $data['Audio']['filename'];
}

在这里,我明确告诉图像首先出现,然后是我不想要的音频......

我的图片模型

function getImagesAndAudio($userid){
    $this->bindModel(array(
        'belongsTo' => array(
            'Audio' => array(
                'className' => 'Audio',
                'foreignKey' => false,
                'conditions' => array(
                    'Image.user_id = Audio.user_id',
                ),
                'type' => 'LEFT',
            )
        )
    ), false);

    return $this->find('all', array('conditions' => array('Image.User_id' => $userid),
        'contain' => array('Audio' ),
    ));
}

从控制器传递数据

$data = $this->Image->getImagesAndAudio($userid);
$this->set('datas', $data);

0 个答案:

没有答案