2013-10-01 81 views
0

我在CakePHP中,模型類定義是這樣的:CakePHP的回報hasOne關係陣列

class Programme extends AppModel { 
    public $hasOne = array(
     'ProgrammeLikes' => array(
     'className' => 'ProgrammeLikes', 
     'fields' => array('likes')); 
} 

當從它們返回與鍵入到「綱要」的數組的數組數據庫中檢索我的模型和一個單獨的陣列,鍵入'ProgrammeLikes'(它正確包含'likes'值)。爲了減少現有代碼所需的更改,我希望「喜歡」值位於「程序」數組內。

這可能嗎?

在此先感謝

回答

0

使用virtualFields這裏去完成這件事情。

class Programme extends AppModel { 
    public $hasOne = array(
     'ProgrammeLikes' => array(
     'className' => 'ProgrammeLikes', 
     'fields' => array('likes') 
    ); 

    public $virtualFields = array(
     'likes' => 'SELECT likes FROM programme_likes AS ProgrammeLikes WHERE ProgrammeLikes.id = Programme.programme_likes_id' 
    ); 
    // Where programme_likes_id is the foriegnkey for Programme model 

} 

注:我以爲programme_likesProgrammeLikes型號和programme_likes_id你的表名是 Programme型號的foriegnkey,這樣你就可以安排適合你的要求,你自己的方式查詢。

+0

讓我知道您是否有任何疑問或疑慮 –

+0

謝謝Anil。作品一種享受。 – Russell

+0

很高興幫助你羅素 –