Laravelにおいて、DBから値をとってくる時に困ったので、自分でまとめたものを記載する。
前提:Laravelのセットアップ及びDBとの接続が済んでいる
LaravelはMVCを採用している。M=Model V=view C=Controllerである。
Vに当たるものを仮にmenu.blade.phpとする。このファイル内でタイトルデータがmenu_titleというカラムにあったとすると
タイトルとなっている部分を{{ $data->menu_title}}
で置き換える。viewの処理はこれだけでよい。
仮に、複数タイトルが存在する場合は、@foreach($menu_list as $data)
で囲めば良い。
@endforeach
を忘れずに。
ここの$menu_list
というのはmenu_title
が格納されているテーブル名の単数形を入れる。
次にrouteの処理。
本来は
Route::get('/menu', function(
return view('menu');
});
となっている部分を
Route::get('/menu', 'MenuController@index');
で置き換えれば良い。
次にコントローラの話をする。
$ php artisan make:controller MenuController
で作成できる。
ここの関数でDBに接続する。
public function index() {
$data = [
'menu_list' => DB::table('tbl_menu_lists')->paginate(20),
];
return view('menu', $data);
}}