2014-09-26 120 views
0

我有一個表,名爲答案和其列idanswersbatchcandidate_id。我想是沒有根據的1添加條件Laravel有()

有沒有辦法來添加條件,這種說法批號的答案記錄所有考生(這是我的候選模型)?

return $this->has('answers', '=', 0)->get(); 

我嘗試這樣的方式,但它沒有工作:

return $this->has('answers', '=', 0)->whereBatch(1)->get(); 
+0

在文檔中找到 「如果您需要更多的權力,您可以使用whereHas和orWhereHas方法將」where「條件放在您的查詢中」 – 2014-09-26 09:42:24

回答

3

您需要whereHas

$this->whereHas('answers', function ($q) { 
    $q->whereBatch(1); 
}, '=', 0)->get(); 

順便說一句,這是完全一樣的調用has與封閉物,5 PARAM :

$this->has('answers', '=', 0, 'and', function ($q) { 
    $q->whereBatch(1); 
})->get(); 
+0

謝謝!這很好用! :) – jedcgc 2014-09-26 09:42:38