我有三个表:单位,优惠和具有以下关联的代理
当我对单元表进行分页时,我会获得每个单元的所有单元和所有相应的商品,但不会获得商品所属的代理商。例如:
- Unit1
- offer1
- offer2
- Unit2
- offer1
- offer2
- offer3
我希望得到类似的东西:
- Unit1
- offer1
- agent1
- offer2
- agent2
- Unit2
- offer1
- agent1
- offer2
- agent2
- offer3
- agent3
怎么做?
答案 0 :(得分:0)
最简单的解决方案是在调用paginage之前增加Model的递归。
$this->Unit->recursive = 1; //or more
但你应该非常小心,因为你可以两次调用相同的模型。这里有额外的建议:在使用之前尝试取消绑定不必要的模型。再次 - 非常小心,因为这可能会减慢应用程序。
答案 1 :(得分:0)
使用Containable行为可以帮到你。我现在从不使用递归。
或者,在感兴趣的表中创建数据库视图有时会很有帮助。这将使分页更简单,并允许您准确指定所需的数据(避免不必要的数据传输)。