我们说我有用户模型。每个用户都有Pet
模型。
两者都正确设置了关系。
当我获得用户数据和他的宠物时,我这样做:
return $this->with('pets');
但如果我想仅使用用户数据返回宠物name
该怎么办?
我一直在尝试:
return $this->with('pets.name');
没有为我工作。
答案 0 :(得分:1)
模型
Class User extends Model ()
{
...
public function pets()
{
return $this->hasOne('App\Model\Pet');
}
}
控制器或存储库或任何其他对象
function getUserDetails (Request $request)
{
$userId = $request->get('id');
$findUserById = User::find($userId);
$fullName = $findUserById->pets->fullname;
}
答案 1 :(得分:0)
你可以这样做:
$users_with_pet_name = DB::table('users')
->join('pets', 'users.id', '=', 'pets.user_id')
->select('users.*', 'pets.name')
->get();