循环对象关系Laravel

时间:2015-09-27 17:07:56

标签: php laravel

我试图通过相关作业遍历所有用户。我在模型中创建了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

1 个答案:

答案 0 :(得分:1)

不要调用assignments方法。只需将其作为财产访问:

@foreach($student->assignments as $assignment)
    //                       ^^
@endforeach