0
我使用CakePHP創建消息傳遞系統。在車型方面,CakePHP - 使用「包含」查找中包含的不需要的HABTM
Users HABTM Conversations
Conversations hasMany Messages
Messages belongTo User (the sender)
所以我上運行一個用戶找到狀態,並且包含如下:
$user = $this->Conversation->User->find('first', array(
'conditions' => array('User.id' => $user_id),
'contain' => array(
'Conversation' => array(
'ConversationsUser',
'Message' => array(
'order' => 'Message.created DESC',
'limit' => 1,
'User' => array(
'Student' => array(
'University'
),
'Recruiter' => array(
'Org'
)
)
)
)
)
));
當我得到的結果,我得到$用戶[「會話''['Message'] ['User'] ['會話'] - 基本上,HABTM連接會自動完成3級,而且我無法阻止它。有沒有辦法讓我從查找中刪除這些信息?
你在哪裏設置了可容忍的行爲?如果您沒有在AppModel中設置(或單獨在_each_模型中),我可以想象,如果您包含的模型不使用Containable行爲,那麼該模型將根據其「遞歸」設置獲取相關數據。 (這是猜測,這就是爲什麼我沒有把它寫成答案) – Joep