我从表格中获取所有项目:
endDate
是> = now endDate
是NULL
published
等于1
。这就是我所拥有的,但它给了我0项:
$items = Items::orderBy(\DB::raw('RAND()'))
->where('endDate', '>=', date("Y-m-d"))
->whereNull('endDate')
->where('published', '1')
->whereIn('cid', $this->activeId)
->orderBy('id')
->paginate(4);
答案 0 :(得分:12)
您需要使用闭包和orWhereNull()
:
->where(function($) {
$q->where('endDate', '>=', date("Y-m-d"))
->orWhereNull('endDate');
})
答案 1 :(得分:2)
您可以使用两个句柄where
和orWhere
:
->where(function($query) {
$query->where('endDate', '>=', date("Y-m-d"))
->orWhere('endDate',NULL);
})
答案 2 :(得分:1)
你正在使用两个条件,它永远不会给出结果
->where('endDate', '>=', date("Y-m-d"))
->whereNull('endDate')
尝试使用orWhere