2011-11-02 138 views
0

起初對不起我的英文。 我在CakePHP的關聯模型中遇到了問題。當我比兩款車型結合更多的,例如CakePHP中關聯模型的名稱

 
    $this->Album->bindModel(
       array(
        'hasMany'=>array(
         'Photo'=>array(
          'className'=>'Photo' 
         ), 
         'Album'=>array(
          'className'=>'Album' 
         ) 
        ) 
       ) 
      ); 

我:

 
Array 
(
    [Album] => Array 
     (
      [id] => 22 
      [f_name] => Some album 
      [0] => Array 
       (
        [id] => 19 
        [f_name] => Another album 
        [id_parent] => 22 
        [Photo] => Array 
         (
.... 

這是任何方式設置在父表中的關鍵字?我的意思是我不想有「0」作爲關鍵,可以有「專輯1」,「專輯2」等。

回答

0

該問題可能源於將模型綁定到自己的同名名稱上。相冊hasMany相冊可能會在某處出現Cake。爲關聯使用唯一的名稱,如Album hasMany SubAlbum。

+0

我知道在它自己的模型中有一個模型。我寫了一個例子,在其他方面還有其他表格。有某種對象的層次結構樹。一個對象具有相同類型的兒童對象(專輯 - >專輯)或另一種類型(專輯 - >照片)。 無論如何 - 如何在關聯中設置模型的別名? –

+0

你已經差不多了: '$這個 - >相冊 - > bindModel( \t陣列( \t \t '的hasMany'=>陣列( \t \t \t 'SomeOtherName'=>陣列( \t \t \t \t「的className '=>' 照片」 \t \t \t) \t \t) \t) );' –