在 Laravel 6 中,如何根据其父项的属性查询模型?

In Laravel 6, how do I query a model based on the properties of its parent?

每个项目都有很多任务,这是在项目和任务模型中定义的。

当通过浏览到 /tasks/{id} 打开任务时,我想在允许用户打开任务之前检查它是否属于处于特定阶段的项目。正在寻找类似的东西,有没有办法做到这一点?

$tasks = Task::where(project->'stage', $current_stage)->where('id', $id)->get();

您应该将您的变量命名为 $task 并使用 first() 因为在匹配 ID 时,应该只有一个答案。

$task = Task::with('project')->firstOrFail($id);

if($task->project->stage != $current_stage) {
   // throw your error here, return redirect or whatever
}