![](/img/trans.png)
[英]Laravel Eloquent relationship between one Model and Many Models as MorphOne?
[英]Sort Eloquent models on relationship (one>many)
我有一個名為“ Lesson”的模型,該模型具有->hasMany()
關系,該關系表示本課程的日期。
要檢索在一定時間范圍內具有日期的每節課,我使用whereHas
:
$list = Lesson::whereHas('dates', function ($query) use ($start, $end) {
$query->where('date','>=', $start->format('Y-m-d'))
->where('date','<=', $end->format('Y-m-d'));
})->get()
這可以按預期工作,但是我現在想按與課程相關的“最小”日期對$list
進行排序。
最好是我希望使用Eloquent模型,因為模型中需要一些方法。 但是,如果不可能,那么也可以使用“普通” sql語句。
您可以使用Laravel集合的可用方法。此代碼應做到這一點。
$sortedLessons = $lessons->sortBy(function ($lesson) {
$dates = $lesson->dates;
$minDate = $dates->sortBy('date');
return $minDate;
});
我假設您在日期模型中有一個字段日期。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.