Laravel 5 One to One关系返回null

时间:2016-12-14 00:34:28

标签: php laravel eloquent

我正在尝试创建一对一关系的两个模型:周模型和WeekType模型。 WeekType属于Week,应该是一对一的关系..但是,Laravel在a上返回null dd(Week::find($id)->weektpye);

以下是我的模特:

Week.php

public function weekTypes()
{
    return $this -> hasOne('App\WeekType');
}

WeekType.php

public function weeks()
{
    return $this -> belongsTo('App\Week');
}

我的架构:

http://imgur.com/K2XhJVB

我觉得我遗漏了一些明显的东西,或者我的架构配置不正确,但我不确定如何。

1 个答案:

答案 0 :(得分:2)

我认为你可能会混淆单数和复数命名。看起来您正在尝试访问dd()中的单数版本,但已将其命名为复数。此外,dd()中也有拼写错误。你的架构看起来没问题,所以我相信以下内容适合你。

Week.php

public function weekType()
{
    return $this->hasOne('App\WeekType', 'week_type_id');
}

WeekType.php

public function weeks()
{
    return $this->belongsTo('App\Week', 'week_type_id');
}

之后,以下内容适合您。

dd(Week::find($id)->weekType);