我正在开发一个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'];
}

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

my Images Model

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);