【发布时间】:2015-03-18 14:08:00
【问题描述】:
我有两个表,一个是 events 表,一个是 event_dates 表。
我想要做的是根据 event_dates 限制我的事件的结果数量。 eg:如果当前日期超过了事件的最后日期,则不会返回。
目前我有这个:
$events = Events::with(['dates'=>function($query)
{
$query->orderBy('event_date','asc');
}])->get();
return response()->json($events);
这会给我一个“日期”数组升序的 json 数组。有没有办法在事件查询的 where 子句中使用该数组中的最后一行?
【问题讨论】:
-
您正在寻找
whereHas。 laravel.com/docs/5.0/eloquent#querying-relations -
我看到了,但我认为它没有达到我想要的效果。也许我不明白。你能举个例子吗?我认为 whereHas 只有在有日期期间才会返回。
-
其实我想我现在明白它是如何工作的了。我试试看。
-
现在我已经写了答案太晚了;)
-
哈哈。好吧,我可以接受你的回答,并为此给你宝贵的互联网积分。谢谢!