我通过这种方式连接了3个模型:
Organization
→ApplicationInstance
→(枢轴)→Invoice
是否知道如何从本组织获取所有发票?
答案 0 :(得分:0)
如果您在模型上定义了relationships,则可以使用$organization->application_instance->invoice
。
答案 1 :(得分:-3)
这是我对这个问题的解决方案:
public function invoices() {
$indexes = \DB::select('SELECT invoices.id FROM invoices,application_instance_invoice,application_instances
WHERE invoices.id=application_instance_invoice.invoice_id
AND application_instances.id=application_instance_invoice.application_instance_id
AND application_instances.organization_id=:id', ['id' => $this->id]);
$indexArray = array();
foreach($indexes as $index) {
array_push($indexArray,$index->id);
}
return Invoice::whereIn('id', $indexArray)->orderBy('created_at');
}
我很确定有更简单的方法可以做到这一点,但这确实有用。