0

我对模型关系有疑问,我不确定是否应该使用 hasMany through 或其他技术。我正在尝试创建一个用于创建调查的应用程序。我有以下关系:

Topics hasMany Quests
Quests hasMany Questoptions

但是当我试图通过 TopicsController 访问主题模型时,我只得到主题和链接的任务,而不是任务选项。当我访问任务模型时,我会获得所有任务和链接的任务选项。如何在一个数组中获取所有带有链接任务和链接任务选项的主题?

hasMany through 似乎不是答案,因为它不是多对多的情况......

有任何想法吗?

4

1 回答 1

0

是的,递归会完成这项工作,但你最好使用可包含行为:http ://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html

基本上,设置递归设置 Cake 将应用于该模型中的所有关系的级别 - 因此可能导致您获得比您真正需要的更多的数据,并使您的应用程序比它可能的速度慢。

Containable 的粒度更细,允许您针对对数据库的任何给定请求准确选择您需要和不想返回的相关数据。

于 2013-03-10T06:51:09.017 回答