我有两个表格问题和问题银行。
我创建了两个模型Question和QuestionBank。
主键:问题表:( QuestionID),QuestionBank表:(QuestionBankID)。
外键:Questions.QuestionBankID = QuestionBank.QuestionBankID
问题模型:
public function QuestionBank() {
return $this->belongsTo('App\QuestionBank'); // this matches the Eloquent model
}
QuestionBank模型:
public function Questions() {
return $this->belongsTo('App\Questions'); // this matches the Eloquent model
}
在我的控制器中我写了一段代码:
返回问题:: with('QuestionBank') - > get();
运行路由器:
我为question_bank:null
获得了空值对我的输出:
[{"QuestionTitle":"OSCE","question_bank":null}]
答案 0 :(得分:0)
由于您使用非标准列名称,因此必须指定它们:
public function QuestionBank() {
return $this->belongsTo('App\QuestionBank', 'QuestionBankID', 'QuestionBankID');
}
在相反的方向上,它是HasMany
关系:
public function Questions() {
return $this->hasMany('App\Questions', 'QuestionBankID', 'QuestionBankID');
}
将其添加到Question
模型中以调整响应:
protected $appends = ['QuestionBankName'];
public function getQuestionBankNameAttribute() {
return $this->QuestionBank->QuestionBank;
}