1
在我的应用程序连接表,我有以下表格:设置包含在CakePHP中
Posts
id
title
content
Users
id
username
password
Profiles
id
user_id
firstname
lastname
Comments
id
post_id
user_id
content
Topics
id
title
Topic_Posts
id
topic_id
post_id
希望的关系相当明显!我遇到的问题是最后一个表是关于帖子和主题之间多对多关系的连接表。我不完全确定如何设置它!
这里是我的帖子,主题和Topics_Posts型号:
class Post extends AppModel
{
public $name = 'Post';
public $belongsTo = 'User';
public $hasMany = array('Comment', 'TopicPost');
public $actsAs = array('Containable');
}
class Topic extends AppModel
{
public $hasMany = array(
'TopicPost'
);
}
class TopicPost extends AppModel {
public $belongsTo = array(
'Topic', 'Post'
);
}
至于我可以告诉大家的关系是正确的?然后在我的方法,我有以下声明:
$post = $this->Post->find('first',
array('contain'=>
array(
'Comment'=>array('User'=>array('Profile')),
'User'=>array('Comment','Profile')
),
'conditions'=>array('Post.id'=>$id)));
所以基本上我的问题是如何将主题添加到包含,因为我还没有到评论和用户添加到Post模型所以不知道为什么或接下来要做什么...
另外我如何再将主题拉出来?由于我很困惑这将如何工作考虑到我连接到连接表而不是实际主题......除非我只是偏离轨道。帮助这将不胜感激。
真棒的伟大工程。 – Cameron 2012-04-08 20:45:14