我有三张table:
阶段任务
| 阶段Id|任务ID|
| - ------|- ------|
| 1个|1个|
| 1个|第二章|
| 第二章|四个|
任务
| 任务ID|任务名称|默认资源|
| - ------|- ------|- ------|
| 1个|做一件事|1个|
| 第二章|做另一件事|1个|
| 三个|做些别的事情|第二章|
资源
| 身份证|姓名|
| - ------|- ------|
| 1个|工程|
| 第二章|支持|
| 第二章|销售额|
我正在尝试获取可以打印的结果集
阶段ID:1,任务名称:执行操作,资源名称:工程
阶段ID:1,任务名称:执行另一项操作,资源名称:工程
下面是我的阶段任务模型:
public function phaseTasks(){
return $this->hasManyThrough(
resources::class,
tasks::class,
'id',
'id',
'taskId',
'defaultResource'
);
}
和我的控制器:
$phaseData = phaseTasks::with('phaseTasks')->where('phaseId','1')->get();
我不能得到任务表信息,也不能弄清楚如何访问资源数据。我确实在print_r($phasedata)中看到了资源数据,我没有看到任务的东西,我猜我需要进入透视表的那部分。
***编辑
我已经知道如何获取www.example.com实体resources.name entity
$阶段数据[0]-〉阶段任务[0]-〉名称;
现在我只需要弄清楚如何获取taskName实体。
1条答案
按热度按时间roejwanj1#
我不确定,但我想你的关系正好相反:它不是有许多(通过)但属于。
因此,阶段任务- task_id属于任务-默认资源属于资源
而且你的相位任务本身看起来就像一个数据透视表,但这可能是可以的。
因此,如果您同意我的假设,并按照我的方式创建关系,请尝试以下操作