方案:
警报属于1个用户和1个位置,两者分别由alert
表中的外键 - user_id和location_id引用。每个请求的user_id都是相同的,但location_id肯定会有所不同。
我想显示与该用户相关的所有警报,我已经成功实现了这一点,但没有使用预先加载。
到目前为止我的getIndex函数:public function getIndex()
{
$alert = User::with('alerts.location')
->where('id', '=', Auth::user()->id)->first();
$this->layout->content = View::make('agents.index',
array('alert' => $alert));
}
打印MYSQL查询似乎在逻辑上是正确的,但是,我正在努力展示'位置'查询的一部分。
我的foreach循环是:
@foreach($alert->locations as $alert)
<td>{{ $alert->location->address_1}}</td>
@endforeach
但是,它会返回错误:
为foreach()提供的参数无效
感谢您的帮助。
答案 0 :(得分:0)
通过使用此forloop访问数据,我能够解决问题@foreach($alert->alerts as $alert)
。