试图从一个表中获取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; 
}