考虑我有两个数据库表:images
和albums
. 他们有这些模式:
images:
id, orig_name, hash, filename, uploaded, views, album_id, user_id, server_id
albums:
id, hash, name, description, user_id
表中的album_id
字段images
指向表中的id
字段albums
。非常简单的一对多的东西。一张图片可以属于一个相册,一个相册可以有很多张图片。我感到困惑的是如何从我的 CakePHPImage
模型中的指定相册中获取图像。目前这是我的模型:
class Image extends AppModel {
public $name = 'Image';
public $belongsTo = array('Server', 'Album');
public function getImages($options) {
$params = array('conditions' => array());
// Specific user
if (!empty($options['userID'])) {
array_push($params['conditions'], array('Image.user_id' => $options['userID']));
}
// Specific album
if (!empty($options['albumHash'])) {
array_push($params['conditions'], array('Image.album_id' => $options['albumHash']));
}
// Order of images
$params['order'] = 'Image.uploaded DESC';
if (!empty($options['order'])) {
$params['order'] = $options['order'];
}
return $this->find('all', $params);
}
}
我想要它做的是根据专辑哈希(hash
表中的字段)从特定专辑中返回图像。如果我有专辑 ID,我知道如何完成这项工作,但我不知道,我只有哈希。
我已经有一个专辑模型,就是这样:
class Album extends AppModel {
public $name = 'Album';
}
但我什至不确定这是否相关。:p
谢谢。