首页 > 解决方案 > 如何从具有一对多关系的 3 个表中获取数据

问题描述

我有一个名为SCORES的表,然后里面有一个名为 subject_id 的外键,它与名为SUBJECTS的表之间的关系是一对多的,然后在表SUBJECTS里面有一个名为 user_id 的外键,它与名为USERS的表的关系是一对多的,现在我可以展示了SCORES表中的主题列表现在如何获取subject_id 等于user_id 的用户名。

控制器:

$scores = Score::with('lead','subject')->where('lead_id','=',$id)->get();

$subjects=Subject::with('user')->get();

看法

<tr> 
  @foreach($scores as $score)
     <th><font size="1">&nbsp;</font></th> 
  @endforeach 
</tr>

<tr>
  @foreach($scores as $score)
 <td>
   <font size="1">{{$score->subject->subject_name}}</font>
  @endforeach 
 </td>
</tr>

标签: phpmysqllaravellaravel-blade

解决方案


从聊天讨论中发现你和模型belongsTo之间有关系。您在分数表中使用 并且您的模型与模型有关。所以,是的,您可以像这样获取用户详细信息SubjectUsersubject_idScorebelongsToSubject

{{$score->subject->user->name}}

推荐阅读