Laravel 5.6 - 3级关系

时间:2018-04-08 15:39:41

标签: php laravel laravel-5

我有以下型号:

  • 评估
  • 上传
  • 等级

这些是他们的关系:

  • 评估hasMany上传
  • 上传所属的评估
  • 上传hasOne Grade
  • 成绩所属上传

表格

  • 用户
  • 评估(id,user_id,名称)
  • 上传(id,assessment_id,grade_id,文件名,大小)
  • 年级(身份证,姓名)

我目前正在这样做,但是想要显示/显示上传的等级名称,但不确定如何?:

@foreach ($assessment->uploads as $upload)
  {{ $upload }}
@endforeach

2 个答案:

答案 0 :(得分:2)

我编辑了你的问题。

像我编辑的那样建立关系。

  • 评估hasMany上传
  • 上传所属的评估
  • 上传belongsTo Grade
  • 成绩hasMany上传

然后尝试这个

@foreach ($assessment->uploads as $upload)
 {{ $upload->grade->name }}
@endforeach

答案 1 :(得分:1)

任何人都在努力将遗留代码转换为Laravel ...当您需要在多列上连接表时,我强烈建议您使用https://github.com/topclaudy/compoships

我在阅读这篇文章时遇到了这个优秀的代码: Laravel Eloquent: multiple foreign keys for relationship