我想知道参加考试的学生的ID. 我在Laravel中使用了关系,我不知道我缺少了什么。下面是代码:
我的模型
考试模式
class Examen extends Model
{
protected $guarded = [];
public function professor()
{
return $this->belongsTo(Professor::class,'prof_id');
}
public function questions()
{
return $this->hasMany(Question::class);
}
public function examen_passers()
{
return $this->hasMany(Examen_passer::class);
}
}
考试模式:考试模式。
class Examen_passer extends Model
{
protected $guarded = [];
public function examen()
{
return $this->belongsTo(Examen::class);
}
public function reponses()
{
return $this->hasMany(Reponse::class);
}
public function reponsestxt()
{
return $this->hasMany(Reponsetxt::class);
}
}
我的控制器。
public function corriger()
{
$examen = Examen::where('prof_id',Auth::guard('professor')->id())->get();
dd($examen->examen_passers->etudiant_id);
}
使用 pluck()
从你的passers集合中获取所有id。
$examen->examen_passers->pluck('etudiant_id');
这个方法将取 etudiant_id
从您的收藏中的每个项目中提取,并将它们一起返回到一个数组中。