gpt4 book ai didi

mysql - 是否可以从 Laravel 中的关系表的关系表中获取数据?

转载 作者:行者123 更新时间:2023-11-28 23:21:05 26 4
gpt4 key购买 nike

假设我有 3 张 table

Users
- id
- name

Phones
- id
- number
- user_id

Carriers
- id
- name
- phone_id

Models 中,我设置了所有必要的 hasManybelongsTo 关系。

我可以选择 user with phones 使用:

App\User::with('phones')->where('id', '=', 1)->first();

电话carrier:

App\Phone::with('carrier')->where('id', '=', 1)->first();

是否可以使用模型 App\User 获得同时包含 phonecarrier 的集合?

最佳答案

您可以使用 Nested eager loading :

$users = App\User::with('phones.carriers')->get();

或者,

设置 Has Many Through用户模型中的关系:

   public function carriers()
{
return $this->hasManyThrough('App\Phone', 'App\Carrier');
}

这样您就可以获得运营商和手机:

$user->carriers;
$user->phones;

关于mysql - 是否可以从 Laravel 中的关系表的关系表中获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41560805/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com