我像往常一样创建一个控制器,并计划将数据传递给查看和显示,但我不知道为什么数据无法显示,我使用dd($ statuses)显示传递的数组正确。但当我改变视图数据消失时,任何人都知道这里的问题是什么?
这是我的观点
PATH
我的控制器
<div class="col-lg-5">
@if(!$statuses->count())
<p>There is no status here</p>
@else
@foreach($statuses as $status)
<p>{{ $status->body }}</p>
@endforeach
@endif
</div>
以下代码用于检查数据是否已通过。结果是带有正确数据的数组,所以我的数据已经通过,但不确定为什么它不能在视图中显示。
$statuses=Status::where(function($query){
return $query->where('user_id',Auth::user()->id);
//->orWhereIn('user_id',Auth::user()->friends()->lists('id'));
})
->orderBy('created_at','desc');
return view('profile.testing')
->with('statuses',$statuses);
答案 0 :(得分:0)
除非您在问题中犯了错误,否则您实际上无法查询控制器内的任何数据,因为您错过了get()
来电。
$statuses=Status::where(function($query){
return $query->where('user_id',Auth::user()->id);
})->orderBy('created_at','desc')
->get(); // Get the data from the DB
return view('profile.testing')->with('statuses',$statuses);
如果没有get()
调用,您的控制器可能只会将QueryBuilder
对象的实例分配给传递给您视图的$statuses
变量。