有很多人回来了

时间:2017-06-15 15:12:09

标签: relationship

我有两种型号 1. Question,主键为questionId并且具有关系

public function option(){

        return $this->hasMany('Option', 'question_id', 'question_id');

    }

AnswerOption 

主键是option_id,foriegn键是questionId当我尝试在控制器中访问此关系时

  $data=  Question::where('question_id',3)->with('option')->get();

它总是返回空数组以获得答案

Array
(
    [0] => Array
        (
            [question_id] => 3
            [option_id] => 3
            [question] => ww
            [questionType] => gfg
            [option] => Array
                (
                )

        )

)

但我在answeroptions表中也有数据也是foriegn key 3

任何人都可以帮助我做错的地方

1 个答案:

答案 0 :(得分:0)

我说你的关系错了。您必须指定相关的表格ID。

$this->hasMany('model', 'foreign_key', 'local_key');

另外,我建议您使用Laravel的约定命名表和字段。

https://laravel.com/docs/5.4/eloquent-relationships#one-to-many