2012-07-12 47 views
0

請考慮我有兩個數據庫表:imagesalbums。他們有這些模式:使用CakePHP從特定專輯中返回圖像

images: 
id, orig_name, hash, filename, uploaded, views, album_id, user_id, server_id 

albums: 
id, hash, name, description, user_id 

albumsimages表指向id領域album_id場。非常簡單的一對多的東西。圖像可以屬於一個相冊,並且相冊可以具有許多圖像。我感到困惑的是如何從我的CakePHP Image模型中的指定專輯中獲取圖像。目前,這是我的模型:

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

謝謝。

回答

0

試試這個:

if (!empty($options['albumHash'])) { 
    array_push($params['conditions'], array('Album.hash' => $options['albumHash'])); 
} 
+0

它是如此簡單......爲什麼沒有這種情況發生在我身上。上帝我愛蛋糕。謝謝。 :D – 2012-07-12 15:46:34

+0

沒問題,是的,這很簡單;) – Zbigniew 2012-07-12 15:50:39

相關問題