gpt4 book ai didi

cakephp - 在 CakePHP 中操作 JOINS 的顺序

转载 作者:行者123 更新时间:2023-12-02 18:38:38 25 4
gpt4 key购买 nike

我在使用 CakePHP 时遇到以下问题:

在我的模型中,存款属于帐户,帐户属于客户。

查询存款时,默认情况下我会获取帐户信息,但不会获取客户信息。

如果我将 Deposit->recursive 设置为 2,我会获得客户信息(以及更多信息),但 CakePHP 本质上会在每次存款时抛出一个 SELECT,这在这种情况下非常糟糕。

所以,我这样做了:

'joins' => array(
array('table'=>'customers', 'alias'=>'Customer', 'type'=>'left', 'foreignKey' => false, 'conditions'=>array('Account.customer_id = Customer.id'))
)

几乎有效...

我从中得到的基本上是:

SELECT (...) FROM Deposits LEFT JOIN Customers LEFT JOIN Accounts

而不是

SELECT (...) FROM Deposits LEFT JOIN Accounts LEFT JOIN Customers

这当然行不通。

是否有办法指定“我的自定义连接”应位于“常规模型连接”之后?
或者我是否必须手动解除帐户存款绑定(bind),并手动指定两个连接?

谢谢!
丹尼尔

最佳答案

您需要取消绑定(bind)想要位于顶部的模型,并将适当的数组包含在“joins”数组中。请参阅this详情请咨询

关于cakephp - 在 CakePHP 中操作 JOINS 的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3343348/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com