0
$subTasks = SubTask::with(['task']) 
    ->with(['users.subTaskInfos' => function ($q) {
        $q->orderBy('created_at', 'desc');
        $q->where('sub_task_id', '=', ?);
    }])
    ->where('active', 1)
    ->get();

我想在问号部分传递 Base Model SubTask id 以过滤掉关系数据和关系数据集合。任何人都可以帮忙吗?

4

1 回答 1

1

实现您正在尝试的一种方法是延迟急切加载users.subTaskInfos- 保持查询数量相同

$subtasks = SubTask::with(['task'])->where('active', 1)->get();

$subtasks->load(['users.subTaskInfos' => function($q) use($subtasks) {
    $q->whereIn('sub_task_id', $subtasks->pluck('id')
        ->orderByDesc('created_at');
});
于 2020-12-13T20:46:48.943 回答