今回はLaravelでの開発の基礎知識を紹介します。
まずはMVCとはなにか?の説明と作成方法です。
環境構築の方法は以下の記事を参考にして頂ければと思います。
MVCとはなにか?
MVCとはアプリケーションソフトウェアを実装するためのデザインパターンであり、Model(モデル)・View(ビュー)・Controller(コントローラー)の3つの役割に分離して作ります。
モデル
ロジックやデータベースへのアクセスを担当
ビュー
Webブラウザへ出力するHTMLを生成
コントローラー
これに、どのコントローラーを呼ぶか制御しているルーティングを含めてリクエストからブラウザへの出力までの流れは以下の様になります。
コントローラーの作成
まずはコントローラーを作ります。ディレクトリをプロジェクトのトップに移動して以下のコマンドを実行
$ php artisan make:controller HogeController
実行すると以下のファイルがapp/Http/Controllers/の下に出来ていると思います。
ここでルーティングに今のルーティングを登録します。
routes/web.php
出来たらコマンドで確認します。
$ php artisan route:list +--------+----------+----------+------+-------------------------------------------+--------------+ | Domain | Method | URI | Name | Action | Middleware | +--------+----------+----------+------+-------------------------------------------+--------------+ | | GET|HEAD | / | | Closure | web | | | GET|HEAD | api/user | | Closure | api,auth:api | | | GET|HEAD | hoge | | App\Http\Controllers\HogeController@index | web | +--------+----------+----------+------+-------------------------------------------+--------------+
URL「hoge」の行が、出来ていますね!
そしてHogeController.phpを以下のように編集します。
編集後http://localhost/hogeへアクセスして動作を確認します。
これでコントローラが出来ました。
モデルの作成
まずデータベースにテーブルを作成する為、migrationファイルを用意します。
$ php artisan make:migration create_hoge_table
コマンドを実行したら日付つきでファイル名が表示されると思うのでそのファイルを編集します。
database/migrations/日付_create_hoge_table.php
編集が終わったら反映させます。
$ php artisan migrate
続いてテストデータをSeederで作るので以下のコマンドを実行
$ php artisan make:seed HogeTableSeeder
コマンド実行後database/seeds/HogeTableSeeder.phpが作成されます。
そのファイルを以下の様に編集
続いてdatabase/seeds/DatabaseSeeder.phpを編集します。
編集後以下のコマンドを実行してテーブルにデータをインサートします。
$ php artisan db:seed
実行後MarinaDBで登録されてるか確認するとこんな感じです。
MariaDB [laravel]> select * from hoges; +----+----------+------------+------------+ | id | name | created_at | updated_at | +----+----------+------------+------------+ | 1 | hogehoge | NULL | NULL | +----+----------+------------+------------+ 1 row in set (0.000 sec)
テーブルとデータが登録されたのでモデルを作成します。
$ php artisan make:model Hoge
出来たModelをコントロラーから使用してみます。
コントローラーを編集したらブラウザからアクセスしてみます。
ビューの作成
ファイルresources/views/hoge.blade.phpを作成して以下のように編集します。
コントローラーも編集します。
編集したらブラウザから確認します。
最後に
本日はMVCについての説明とモデル・ビュー・コントローラーの基本的な作り方を紹介させて頂きました。
何か不明な箇所や間違っている箇所がありましたらコメント頂けたら嬉しいです。