我试图通过相关作业遍历所有用户。我在模型中创建了User-> Assignment Relationship。当我dd($学生)我收到了他们相关作业的学生阵列,但是当我在页面上看到这个时,我没有收到作业循环。我可以在代码中遗漏什么?我确定它在html中的某个地方搞砸了。
用户模型:
public function assignments()
{
return $this->hasMany('App\Assignment');
}
作业模式:
public function userAssignment()
{
return $this->belongsTo('App\User');
}
控制器:
$students = User::where('position','student')->with('assignments')->get();
HTML
@foreach($students as $student)
<div class="item{{{ $isFirst ? ' active' : '' }}}">
<div class = "deck">
<div class = "row marg">
<div class="col-md-8">
<div class = "stdnt">
<h1>Student Info</h1>
<h1>{{$student->name}}</h1>
<p>Program: {{$student->pack}}</p>
<p>Level: {{$student->level}}</p>
<p>Status: {{$student->status}}</p>
<p>Lesson: {{$student->lesson}}</p>
</div>
</div>
<div class = "col-md-4">
<div class = "teac">
<h1>Teacher Info</h1>
<h1>{{$student->teacher}}</h1>
<p>Picture</p>
<p>assign form</p>
<p>assign button</p>
</div>
</div>
</div>
</div>
<div class = "mask flow">
<div class = "row-fluid marg">
@foreach($student->assignments() as $assignment)
<div class = "ablock">
<h1>{{$assignment->title}}</h1>
<p>{{$assignment->created_at}}</p>
<p>{{$assignment->type}}</p>
<p>{{$assignment->body}}</p>
</div>
@endforeach
</div>
</div>
{{--*/ $isFirst = false; /*--}}
</div>
@endforeach
答案 0 :(得分:1)
不要调用assignments
方法。只需将其作为财产访问:
@foreach($student->assignments as $assignment)
// ^^
@endforeach