[英]laravel one to many relationship column not found
我有以下型號:
class Question extends Eloquent
{
public function quiz()
{
return $this->belongsTo('Quiz','id_quiz','id');
}
public function answer()
{
return $this->hasMany('Answer');
}
}
class Answer extends Eloquent
{
public function question()
{
return $this->belongsTo('Question','id_question','id');
}
}
在控制器中,我使用:
$questions = Question::with('answer')->whereHas(
'quiz', function($q) use($id) {$q->where('id', $id);
})->get();
我收到以下錯誤:
列未找到:1054未知列在'where子句' 'answers.question_id'(SQL:選擇從*
answers
其中answers
。question_id
在(10,11,12,13)))
您應該通過以下方式在“ Question
模型中定義answer
關系:
public function answer(){
return $this->hasMany('Answer','id_question','id');
}
因為如您所說,您有id_question
列而不是question_id
,在這種情況下,默認值為什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.