cakePhP中的模型关系类型

时间:2010-05-10 02:47:42

标签: cakephp

我查看了cakephp的食谱网站,有四种类型的模型关系:
http://book.cakephp.org/view/79/Relationship-Types

因为我更熟悉的是belongsTo,
我不确定何时需要使用hasManay和HABTM。
如果我使用错误的模型关系类型,我的网站会有什么结果?
请指教。

1 个答案:

答案 0 :(得分:2)

belongsTohasMany是一对,表达一对多的关系。一个模型属于另一个模型(即它有一个other_model_id字段),而另一个模型的另一个模型在模型中有许多记录属于它。这是同一枚硬币的两面。

hasAndBelongsToMany是Cake关于多对多关系的术语。关于这种关系的Here's a primer。当两个模型都拥有其他模型的许多时,您可以使用此方法,例如:人 - 人友情关系。两个模型之间的多对多关系需要三个表:model_amodel_bmodel_a_model_b。如果你试图在没有第三个表的情况下使用这种类型的关系,你可能只会遇到一堆错误。