2014-09-19 32 views
0

我想重用laravel連續數據。我不知道這個問題的含義是否充分。所以我會用波紋管編碼來解釋。 我想用波紋管編碼來獲得一些數據。laravel過濾通過where子句或重複使用的常用數據的連續數據

$pending = Case::where('user_id', $id)->where('status', 0)->paginate(20); 
$approved = Case::where('user_id', $id)->where('status', 1)->paginate(20); 

但我認爲這不是一個有效的方法。 所以我用波紋管編碼代替上面的代碼。第一次將父數據發送給變量。

$cases = Case::where('user_id', $id); 

我嘗試使用where子句從上面的變量過濾子數據後。

$pending = $cases->where('status', 0)->paginate(20); 
$approved = $cases->where('status', 1)->paginate(20); 

執行$ pending後有權限數據。但$不是我所希望的。 我該怎麼做。謝謝。

+0

沒什麼低效的擔心。 – 2014-09-19 19:33:31

回答

1

$cases->where(...)在查詢中添加了where子句,但直到調用paginate(或get和其他使用結果的函數)纔會執行該子句。

您的$approved查詢因此基本上有WHERE status=0 AND status=1,這將永遠不會工作。

您可以嘗試將$cases複製到另一個變量(即$approvedCases = $cases;)中,但您最好使用原始代碼。