我有三个模型,Users,Comments和Pages。
用户 有很多 评论,评论 属于 页面。
所有模型都使用该containable
行为,并且默认为recursive -1
.
如果我在Comments上调用find()
查询,其中包含请求包括Page模型的字段,这将使用单个查询正确返回结果,自动将Page表连接到用户。
如果我从User模型(包含 Comment和Comment.Page)调用一个类似的查询,结果是一个查询以获取Comments,然后是每个评论的查询以获取相关的Page。
有没有办法配置模型以保持 JOIN 优化?我假设相关模型( Comments )上的 belongsTo 声明将遵循主机模型(Users)。
更新
我应该澄清一下,我的问题使用了我实际案例研究的简化版本。虽然我需要的最小解决方案将包括这个初始模型 hasMany Model belongsTo Model结构,但我也在寻找一个或多个额外的belongsTo 模型的解决方案(虽然我会自动使用 LEFT JOIN,因为这将是可行的)。