下面的数据库
User : id,name,age
Shop : id,user_id,name
Address : id, shop_id, address
Shop Type : id, shop_id, type
一个[用户]有多个[商店],并且[商店]有多个分店,因此它有多个[地址],并且[商店]也有多个[类型],例如酒精,食物,零食,饮料等等。
现在我想获取用户的商店及其所有地址和商店类型。
在我使用的模型中 用户类别
public function shop(){
return $this->hasMany('App\Shop');
}
商店类别
public function address(){
return $this->hasMany('App\Address');
}
public function type(){
return $this->hasMany('App\ShopType');
}
我的控制
public function user($id)
{
$user = User::where("id",$id)->with('shop.address')->first();
if($user){
return response()->json(
[
'user' => $user,
],
200,
array(),
JSON_PRETTY_PRINT
);
}else{
return false;
}
上面的代码可以获取所有用户的店铺和店铺地址 但我怎样才能获得商店的类型呢?
谢谢
最佳答案
试试这个:
User::where('id', $id)->with('shop.address', 'shop.type')->first();
(最初评论)
关于php - Laravel 5 获取具有关系和多重关系的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32764751/