2014-10-17 75 views
0

我有一个查询,我需要从2个表中获取信息。所以我需要发票invoice_status 1,其中user_status是1. 虽然我可以用users表查询Invoices表。当我DD($发票)我得到与用户就好发票...Laravel - Query“with”

$invoices = Invoice::with('user')->where('invoice_status', '=', 2)->get(); 

但我不知道知道我怎么能得到用户 - > ACCOUNT_STATUS。我试过这个,但得到一个查询错误,它找不到account_status。

$invoices = Invoice::with('user')->where('invoice_status', '=', 2)->where('account_status', '=', 1)->get(); 

回答

4

您可以在封闭传递到处理查询的渴望负载的内容:

$invoices = Invoice::with(array('user' => function($query) { 
    $query->where('account_status', '=', 1); 
}))->where('invoice_status', '=', 2)->get(); 
+0

这不是为我工作,我得到一个语法错误,意想不到的“[”,期待')' – snorth 2014-10-17 15:53:20

+0

可能是因为新的数组语法。看到我编辑的答案 – Dencker 2014-10-17 16:08:08

+0

是的,这是诀窍。谢谢。 – snorth 2014-10-17 16:22:07