在花了几个小时解决这个问题之后,我想向你寻求帮助。
我有以下结构:
模型: Student.php
class Student extends Model
{
protected $table = 'studenten';
public function kurs() {
return $this->belongsTo(Kurs::class);
}
}
模型: Kurs.php
class Kurs extends Model
{
protected $table = 'kurse';
public function studenten() {
return $this->hasMany(Student::class);
}
}
控制器: KursController.php
class KursController extends Controller
{
public function showStudenten() {
return view('example.studenten', [
'kurse' => Kurs::all(),
]);
}
}
视图:例子' studenten.blade.php
@foreach($kurse as $kurs)
<p>{{ $kurs->title }}, {{ $kurs->id }}</p>
@foreach($kurs->studenten() as $student))
<p>{{ $student->name }}</p>
@endforeach
@endforeach
表:kurse
id | title | created_at | updated at
表:studenten
id | name | kurs_id | created_at | updated_at
我正在尝试输出属于每门课程的学生。我的错误在哪里?我试图在我的模型方法中指定外键'kurs_id',但它不起作用。你能帮我找出我的错误吗?
提前感谢。
试试这个
In Your Controller
public function showStudenten() {
return view('example.studenten', [
'kurse' => Kurs::with('studenten')->get(),
]);
}
视图文件
@foreach($kurse as $kurs)
<p>{{ $kurs->title }}, {{ $kurs->id }}</p>
@foreach($kurs->studenten as $student))
<p>{{ $student->name }}</p>
@endforeach
@endforeach