我正在使用ContainableBehavior在我的CakePHP 2.4应用程序中获取查找的深层关联。但是,这导致太多的 SQL查询 - 在一页上成千上万。
为了简化我的关系,它看起来像这样:
Post
hasMany
- Sighting
hasMany
- Field
belongsTo
- Fieldtype
现在,当我在我的contain
语句中执行find()指定这些时,我的DebugKit MySQL日志中充满了这样的查询,一遍又一遍地重复:
SELECT `Fieldtype`.`id`, `Fieldtype`.`name` FROM `dev_db`.`fieldtypes`
AS `Fieldtype` WHERE `Fieldtype`.`id` = 48
基本上,它正在为每个Field
的{{1}}进行手动查找,即使它已经拥有数据。
是否有一种解决方案可以返回这种不会重复查询的深层关联?我已尝试使用the Linkable behavior,但是
代码:
Fieldtype