在 blade 模板 laravel 中从单个视图中的多个表分别访问数据

Accessing data separately from multiple tables in single view in blade template laravel

我有三个不同的 table:personsstudentsteachers。我能够加入三个 tables 并获得如下数据:

public function viewProduct()
{
    $persons = Person::with(['students','teachers'])->get();
    return view('master.viewPeoples', compact('persons'));
} 

我想访问我 blade 中的数据。如何在我的 blade 模板中获取学生和教师 table 的数据?我在 students table 中有 rollNumyearsemester 列,在 salarycourses 中有列teachers table.

以下源代码returns数据来自persontable而已。

@foreach($persons as $person)
    {{ $person->name }}
    {{ $person->universityNum }}
    {{ $person->rollNum  }}        //returns blank
    {{ $person->year }}            //returns blank
    ...         
@endforeach

当我这样做时,我得到了学生和老师的所有数据:

@foreach($persons as $person)
    {{ $person->students }}
    {{ $person->teachers }}
@endforeach

但是我想像$students->rollNum

一样分别访问学生和教师每一列的数据table

试试这个

@foreach($persons as $person)
    {{ $person->students->rollNum }}
    {{ $person->teachers->rollNum }}
@endforeach

@foreach($persons as $person)
    {{ $person->students_rollNum }}
    {{ $person->teachers_rollNum }}
@endforeach

试试这个

@foreach($persons as $person)
   {{ $person->name }}

   @foreach($person->students as $student)
      {{ $student->rollNum }}
      {{ $student->year }}
   @endforeach

  // Do same for teachers here
@endforeach

希望对您有所帮助