关系问题hasmany laravel属性复古

时间:2019-10-22 17:02:19

标签: php laravel eloquent--relationship

我有一个hasMany关系,但是在我的控制器上不起作用

代码季节模型:

public function retro () {
    return $this->hasMany('App\Models\Retrocession','season_id');
}

代码控制器:

$hotelagencie = HotelAgency::find($id) ;
    $hotel = $hotelagencie->hotel;
    $season = $hotel->seasons;
    return  $season->retro

Ereur:此集合实例上不存在属性[复古]。

Thxyou。

1 个答案:

答案 0 :(得分:0)

我们确认了您想要的(从所有季节中选择所有复古),所以我想可以给您一个答案:

这就是你得到的:

$hotelagencie = HotelAgency::find($id) ;
    $hotel = $hotelagencie->hotel;
    $season = $hotel->seasons;
    return  $season->retro

我认为这是必须的:

$hotelagencie = HotelAgency::find($id) ;
    $hotel = $hotelagencie->hotel;
    $seasons = $hotel->seasons;
    return $seasons->pluck('retro');

有关pluck()是什么以及如何使用的更多信息,请参考官方文档:

https://laravel.com/docs/6.x/collections#method-pluck

我希望它会有所帮助;)