2014-01-28 91 views
0

为了简单起见,我有以下型号。Laravel加入查询

User Model: 
Has_Many('Campaign') 

Campaign Model 
Has_Many('Schedule') 
Belongs_to('User') 

Schedule Model 
Belongs_to('Campaign') 

我想获取所有属于属于已登录用户的活动的日程安排。

起初,我以为我可以做这样的事情

$user->campaign->schedules; 

但显然我不能......

什么会得到它的最佳方式?

+0

显示您的模型/方法。 – phirschybar

+0

上面列出了车型,还有其他的必要吗?这更多是一个逻辑问题。 –

+0

活动是一个集合,通过它们循环并选择每个的所有时间表? – cecilozaur

回答

0

你可以尝试这样的事情

// Controller 
$user = Auth::user()->with('campaigns.schedules')->first(); 
return View::make('user.schedule_lists')->with('user', $user); 

// View (Blade Templating) 
{{ $user->first_name . ' ' . $user->last_name }} 
@foreach($user->campaigns as $campaign) 
    <h2>{{ $campaign->campaign_field_name }}</h2> 
    <ul> 
     @foreach($campaign->schedules as $schedule) 
      <li>{{ $schedule->schedule_field_name }}</li> 
     @endforeach 
    </ul> 
@endforeach 

更新:我已经展示了使用虚视图名称和表的字段名的过程。