0
私はいつものようにコントローラを作成し、表示して表示するためにデータを渡す予定ですが、データが表示されない理由はわかりません.dd($ statuses)正しいデータが渡されました。しかし、私がデータが消えているのを見るために変更すると、誰もがここで何が問題なのか知っていますか?これが私の見解データがlaravelのビューに表示されない5.2
<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);
次のコードは、データが渡されたかどうかを確認するために使用されます。結果は正しいデータで配列されているため、データは渡されていますが、なぜ表示できないのかはわかりません。
$statuses=Status::where(function($query){
return $query->where('user_id',Auth::user()->id);
})
->orderBy('created_at','desc')
->get();
dd($statuses);
return view('profile.testing')
->with('statuses',$statuses);
}
こんにちは、 - > get()は、データが渡されたかどうかを確認するために使用されるので、私の質問には関係ありません。コントローラ側は実際のコードです。 – masterhunter
それは私の主張です。データベースからデータを取得するには、 '' get() ''を呼び出す必要があります。それ以外の場合は、クエリを定義するオブジェクトのみを渡します。だから、あなたの '' foreach''ループには、あなたがデータベースのために質問しただけで、クエリを実行するようにデータベースに依頼していないので、データベースに質問しなかったので、ループするデータはありません。 '' get() ''関数は実際にデータベースにデータを要求します。 – PeterTheLobster
私は問題を見つけたように見える、あなたの助けに感謝します。私の時間をたくさん節約してください。 – masterhunter