1
模型關聯:CakePHP Containable:如何設置深層條件?
- InfoFaturamento屬於Contrato
- Contrato有許多ContratoCliente
- ContratoCliente有許多VwCliente
我想獲取所有VwClientes
其中InfoFaturamento
等於過去了一個id參數。有可能做到這一點,而不使用連接選項?
這是我試過的代碼。它返回全部ContratoCliente
:
$test = $this->InfoFaturamento->Contrato->ContratoCliente->find('all', [
'contain' => [
'Contrato' => [
'InfoFaturamento' => [
'conditions' => [
'InfoFaturamento.id' => $idInfoFaturamento
]
]
]
],
]);
debug($test); die();
所有關聯都在模型中設置。
我知道我可以使用遞歸選項來做到這一點,但我不喜歡使用它,因爲它返回大量不必要的數據,而且速度很慢。我也可以使用連接,但使用連接是一個好習慣嗎?
我認爲這是相反的,使用Containable將是這些情景的最佳實踐。謝謝。我會使用連接。 –