Laravel,多个查询嵌套多个 order by
Laravel, multiple queries nesting with multiple order by
我正在使用 Laravel 5.2。
我有 3 个表(型号):
- 活动
- 日期
- 会话数
我的关系:事件有很多日期。日期有许多会话。
问题是,当我收到带有日期和 session 的事件时,数据未排序。
如何获取事件的有序日期和每个日期的有序 sessions。
$event = Event::find($id);
$event->load(['dates' => function($query)
{
$query->orderBy('date', 'asc');
}
]);
这就是我如何获得具有有序日期的事件。如何为每个日期订购 sessions?
谢谢
我想我已经找到答案了。负载在嵌套查询中不起作用。所以我应该使用 'with' 而不是 'load'.
$event = Event::find($id);
$event->load(['dates' => function($query)
{
$query->with(['sessions' => function($query)
{
$query->orderBy('starts_at', 'asc');
}
])->orderBy('date', 'asc');
}
]);
我正在使用 Laravel 5.2。 我有 3 个表(型号):
- 活动
- 日期
- 会话数
我的关系:事件有很多日期。日期有许多会话。 问题是,当我收到带有日期和 session 的事件时,数据未排序。
如何获取事件的有序日期和每个日期的有序 sessions。
$event = Event::find($id);
$event->load(['dates' => function($query)
{
$query->orderBy('date', 'asc');
}
]);
这就是我如何获得具有有序日期的事件。如何为每个日期订购 sessions?
谢谢
我想我已经找到答案了。负载在嵌套查询中不起作用。所以我应该使用 'with' 而不是 'load'.
$event = Event::find($id);
$event->load(['dates' => function($query)
{
$query->with(['sessions' => function($query)
{
$query->orderBy('starts_at', 'asc');
}
])->orderBy('date', 'asc');
}
]);