0
私はCakePHPを使ってメッセージングシステムを作成しています。モデルの面では、CakePHP - "contains"を使ってfindに含まれている不要な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で設定しない場合(または別のモデルでは)、Containableビヘイビアを使用しないモデルが含まれている場合、そのモデルは「再帰的」設定に従って関連するデータを取得します。 (これは推測のようなものなので、私は答えとしてまだ書いていないのです) – Joep