2012-02-02 103 views
1

我不知道如何进行我的数据库模式和我的模型关联,任何帮助将不胜感激!Cakephp hasmany,属于协会需要帮助

Okei,它在这里;

模型1:张贴 (ID,标题,CATEGORY_ID,TAG_ID,身体,创建,修改) 模型2:类别 (ID,标题,描述,创建,修改) 模型3:标记 (ID,标题,说明,创建,修改)

Mu问题是如何“建立”数据库表,以允许多个标签和类别,与关联。例如:如果发布1属于category_id = 1,并且hasMany Tag,tag_id:1,3,8,90 示例2:如果发布2属于category_id = 1,5且具有多个标签,则tag_id:1,84,34。

所以基本上,我不确定要采用什么架构,并且允许多个关联的最佳实践。

有什么建议?

谢谢! -Tom

回答

1

最简单的实现方法是使用查找表或连接表。 Cake为这些案例使用了一种所谓的“多与多”(HABTM)关系,这是一种“多对多”的关系类型。

看看at the manual entry for HABTM来处理这种情况。该手册提到了一个您想要的可比较的设置。

你的情况,你会poststags表,这是由称为posts_tags查找表包含post_idtag_id列加入。如果您在Post模型中正确定义了HABTM关系,Cake会知道如何在保存,查找和更新数据时正确使用这三个表。