好吧,我正在Laravel構建一個非常大的應用程序。用戶管理他們自己的虛擬足球隊。我有一個用戶表,然後我有一個團隊表,其中包含名稱,級別和競技場等團隊特有的東西。對於競技場,儘管我決定添加一個arenas表,然後在team表中添加arena_id列,而不是僅添加球隊名單上的球隊名稱。多對一的關係laravel
所以這裏是基本relantionship:
用戶hasOne隊
隊hasOne用戶
隊hasOne競技場
競技場hasOne隊
,所以如果我想獲得的對於用戶而言,我稱之爲方法
$user = User::with('team')->where('username', '=', $username)->first();
$user->team->arena->arena_name;
和一切工作正常;不過,我覺得有一個更乾淨或更簡單的方法來做到這一點。對於這個應用程序有沒有這個問題?
僅供參考:您可以通過'User :: with('team','team.arena')'來加載子關係。 – ceejayoz