我无法将数据库信息传递到刀片文件。我想在一页上显示所有数据库条目。我究竟做错了什么?
diary.blade.php
@foreach($posts as $post)
<Tr>
<th>{{ $post->id }}</th>
<th>{{ $post->body }}</th>
</Tr>
@endforeach
web.php
Route::get('diary', 'DiaryController@index')->name('diary');
DiaryController.php
public function index()
{
$posts = DB::table('entries')->get();
return view ('user.diary')->with('diary', $posts);
}
最佳答案
您传递的变量名称不正确,而不是return view ('user.diary')->with('diary', $posts);
你应该做return view ('user.diary')->with('posts', $posts);
您可以通过以下几种方法将数据传递到视图:
return view('user.diary', ['posts' => $posts]);
要么
return view ('user.diary')->with('posts', $posts);
要么
return view('user.diary', compact('posts'));
希望这对您的问题有所帮助。