首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在laravel中加载嵌套关系

如何在laravel中加载嵌套关系
EN

Stack Overflow用户
提问于 2019-04-29 12:44:22
回答 2查看 248关注 0票数 2

我有三个模型,我想从a开始,用b加载关系,我想在a中加载b和c之间的关系,这可能吗??下面是我想在代码中做的事情:

代码语言:javascript
复制
AccommodationRoomModel which is the B model:
public function accommodation(){
        return $this->belongsTo(Accommodation::class);
    }

  public function roomPricingHistory(){
    return $this->hasMany(RoomPricingHistory::class);
}

在住宿模式中:

代码语言:javascript
复制
public function accommodationRoom()
{
    return $this->Hasmany(AccommodationRoom::class);
}

最后在房间里pricingHistory:

代码语言:javascript
复制
 public function accommodationRoom(){
    return $this->belongsTo(AccommodationRoom::class);
}

现在,在我的住宿控制器里,我想得到房间的所有住宿,而从房间里我想要得到价格,这就是

代码语言:javascript
复制
A = Accomodation
B = Room
C = price

我想用这种方式打电话

代码语言:javascript
复制
From A get B and The relation Of it with C and show all in A
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-04-29 12:56:43

为此,您可以使用Laravel嵌套的急切加载:

来自文档

若要急切地加载嵌套关系,可以使用“点”语法。例如,让我们热切地将本书的所有作者和作者的所有个人联系都载入一个雄辩的陈述中:

代码语言:javascript
复制
$books = App\Book::with('author.contacts')->get();

就你而言:

代码语言:javascript
复制
$accomodations = Accomodation::with('accommodationRoom.roomPricingHistory')->get();
票数 2
EN

Stack Overflow用户

发布于 2019-04-29 12:51:47

嵌套加载

答:加上(“B.C”);

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55903683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档