我正在为我的网络应用程序编写预订系统 我用Controller_r获得了我想要的输出 不幸的是,我无法在我的视图中获得正确的输出。
$userId = Sentry::getUser()->id;
$my_garden = DB::select('select * from gardens where userId = ?',array($userId));
foreach($my_garden as $garden)
{
$gardenId = $garden->id;
$address = $garden->address;
$bookings_in_my_garden = Garden::find($gardenId)->booking;
print_r($address.'<br>');
foreach($bookings_in_my_garden as $bookings)
{
print_r($bookings->dateFrom." - ".$bookings->dateTo.'<br>');
}
}
我得到的输出是
Predikerinnenstraat 10
2013-11-05 - 2013-11-12
Prinsenstraat 2
2013-11-30 - 2013-12-07
2013-11-20 - 2013-11-27
并且是正确的
但是,当我把它传递给我的观点时:
return View::make('admin.booking.index')
->with('my_garden',$my_garden)
->with('bookings_in_my_garden',$bookings_in_my_garden);
并致电
@foreach($my_garden as $garden)
<tr>
<td>{{ $garden->id }}</td>
@foreach($bookings_in_my_garden as $bookings)
<td>{{ $bookings->dateFrom }}</td>
<td></td>
<td></td>
@endforeach
<td>{{ $garden->address }}</td>
<td></td>
</tr>
@endforeach
我最终得到了
2 2013-11-30 2013-11-20 Predikerinnenstraat 10
8 2013-11-30 2013-11-20 Prinsenstraat 2
谁可以帮助我?
答案 0 :(得分:1)
您只是在最后一次预订时转到了您的视图。
你有一些选择,这里有两个:
1)在它们之间创建Eloquent Relationship,以便您可以在视图中
@foreach($my_garden as $garden)
<tr>
<td>{{ $garden->id }}</td>
@foreach($garden->bookings as $booking)
<td>{{ $booking->dateFrom }}</td>
<td></td>
<td></td>
@endforeach
<td>{{ $garden->address }}</td>
<td></td>
</tr>
@endforeach
2)将它们全部存储在控制器中的数组中并传递给您的视图。