【发布时间】:2016-12-07 05:55:33
【问题描述】:
我有两个相关的模型“Yards”和“Inspections”。一个院子可以进行多次检查。
我希望能够根据检查属性“reinspect_at”订购 Yard 列表。我有一个模型方法,可以根据检查日期返回院子的最新检查。
我尝试了以下方法:
$yards = Yard::orderBy('quarantined', 'DESC')
->with(['latestInspection' => function($query){
$query->orderBy('reinspect_at', 'asc');
}])
->get();
但这并没有根据reinspect_at日期订购船厂,它只是订购每个船厂的最新检查。
我希望能够始终返回堆场的最新检查,但需要能够根据 reinspect_at 日期重新排序堆场列表以获取每个堆场的最新检查。干杯
下面显示的堆场列表屏幕截图。如您所见,检查到期日是我希望能够订购结果的方式。
** 更新 ** 看起来我想要的可以在前端模板中使用:
@foreach( $yards->sortBy('latestInspection.reinspect_at') as $yard )
最好能够从控制器中执行此操作,这样我可以有其他选项来订购。
【问题讨论】:
-
我正在使用数据表插件进行排序...你能显示你得到的结果的屏幕截图
-
已添加截图