我在两个表之间有多对一的关系,但是如何使用'with()'方法只引入一个关联的记录,而不是全部? (例如,其日期最接近当前日期)?
答案 0 :(得分:2)
您可以在with()
方法上使用闭包来查询关系。
$users->with(['address' => function($q) use ($someVariable) {
$q->where('zip', '=', $someVariable);
});
答案 1 :(得分:0)
有一种->first()
方法。这将只给你第一个结果。这取代了->get()
。
https://laravel.com/docs/5.3/eloquent#retrieving-single-models
答案 2 :(得分:0)
您可以按照以下方式使用with()
方法。
$user->with(['address'])->findWhere(['zip'=>$someVariable]);