私は$ this-> Topic-> find( 'all')を実行するときに、関連するすべてのユーザーデータと関連するすべてのPostデータを取得します。問題は、今私がそれを行うことができないということです。CakePHP - アソシエーションの問題
今、私は$ this-> User-> find( 'all')を実行し、トピックデータとそのトピック内のすべての投稿を返します。私はこれが私のコードが行うべきことだと思っています。それは私がしたいことではありませんが、です。私の説明を許してください。私は実際にははCakePHPの団体で吸う。
Topic.php
class Topic extends AppModel {
var $name = 'Topic';
var $actsAs = array('Containable');
var $hasMany = array(
'Post' => array(
'className' => 'Post',
'foreignKey' => 'topicid'
)
);
var $hasOne = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'id'
)
);
var $belongsTo = array(
'Forum' => array(
'className' => 'Forum',
'foreignKey' => 'id'
)
);
}
Post.php
class Post extends AppModel {
var $name = 'Post';
var $actsAs = array('Containable');
var $hasOne = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'id'
)
);
var $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'userid'
),
'Topic' => array(
'className' => 'Topic',
'foreignKey' => 'topicid'
)
);
}
Forum.php
class Forum extends AppModel {
var $name = 'Forum';
var $hasMany = array(
'Topic' => array(
'className' => 'Topic',
'foreignKey' => 'forumid'
)
);
}
User.php
:ここはあなたの参照のための私のモデルです
class User extends AppModel {
var $name = 'User';
var $actsAs = array('Containable');
var $hasMany = array(
'ForumPost' => array(
'className' => 'ForumPost',
'foreignKey' => 'userid'
),
'ForumTopic' => array(
'className' => 'ForumTopic',
'foreignKey' => 'userid'
)
);
}
私はの$ this - を行うことができますように、私はそれをしたい> Topic->(「すべて」)を見つけ、それが私のトピックのデータを与え、その後、トピックの各ポストのためのポストデータ、およびユーザートピック内の各投稿のデータ(それぞれ)。
ありがとうございました。