laravelの基礎知識-MVCの作成とルーティング-

今回はLaravelでの開発の基礎知識を紹介します。

まずはMVCとはなにか?の説明と作成方法です。

環境構築の方法は以下の記事を参考にして頂ければと思います。

MVCとはなにか?

MVCとはアプリケーションソフトウェアを実装するためのデザインパターンであり、Model(モデル)・View(ビュー)・Controller(コントローラー)の3つの役割に分離して作ります。

  • モデル

    ロジックやデータベースへのアクセスを担当

  • ビュー

    Webブラウザへ出力するHTMLを生成

  • コントローラー

    リクエストを受けて必要なモデル・ビューを呼び出す。

これに、どのコントローラーを呼ぶか制御しているルーティングを含めてリクエストからブラウザへの出力までの流れは以下の様になります。

それではコントローラー・モデル・ビューをlaravelで作っていきましょう

コントローラーの作成

まずはコントローラーを作ります。ディレクトリをプロジェクトのトップに移動して以下のコマンドを実行

$ 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についての説明とモデル・ビュー・コントローラーの基本的な作り方を紹介させて頂きました。

何か不明な箇所や間違っている箇所がありましたらコメント頂けたら嬉しいです。

PHP
この記事の投稿者
kubo

このサイトの共同編集者、プログラマ、素人デザイナー
得意言語:Java,PHP,Python

フォローする
フォローする
スポンサーリンク
WoW creators
タイトルとURLをコピーしました