试图从一个表中获取id,在另一个表中有多个答案
问题描述:
我有一个包含所有问题的问题表。我也有一个包含所有答案的答案表。 一个问题可以有多个答案,一个答案只属于一个问题。 所以问题是我如何通过它的id获取问题,它应该也包含属于这个问题的所有答案。试图从一个表中获取id,在另一个表中有多个答案
应答模型
class Answer extends Model
{
public function question()
{
return $this->belongsTo('App\Question');
}
}
问题型号
class Question extends Model
{
public function answers()
{
return $this->hasMany('App\Answer');
}
}
我如何编写一个查询,我已经试过几个,但我很困惑,现在
答
每次访问答案问题m的属性奥德尔雄辩将加载并返回所有相关的答案,所以下面的代码将这样的伎俩:
$answers = $question->answers;
当加载多个问题,你应该考虑使用渴望负荷加载更有效的方式相关的答案 - 用一个查询所有问题而不是单独查询每个问题:
$questions = Question::with('answers')->get();
foreach ($questions as $question) {
$questionAnswers = $question->answers;
}