0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Laravelを調べる:Controller/View追加編

Posted at

Laravelを調べる:Controller/View追加編

環境

Name Version
OS macOS Catalina (ver 10.15.7)
docker desktop version 3.2.2

環境構築はこちら↓

Controllerの追加

Controllerの追加には以下のコマンドを実行します。

$ php artisan make:controller HogeController

実行すると、ディレクトリ: ./app/Http/ControllersHogeController.phpが出力されました。
試しに、index() メソッドを追加してみます。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class HogeController extends Controller
{
    // ↓ を追加!
    public function index(){
      return "Fuga Fuga!!";
    }
}

ルーティングの追加(1)

routes/web.php に追加したコントローラを呼び出す行を追加する。

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\HogeController;

Route::get('/', function () {
    return view('welcome');
});
Route::get('hoge', [HogeController::class, 'index']);

動作確認(1)

ブラウザで

http://localhost/hoge

を開くとControllerで出力している文字列: Fuga Fuga!! が表示される。

Viewの追加

class HogeController にview() メソッドを追加する。

    
    public function view(){
      $data = [
        'msg1' => 'Hoge!',
        'msg2' => 'Fuga...'
      ];
      # view(path, args)
      return view('hoge', $data);
    }
}

ルーティングの追加(2)

./routes/web.php に再度ルーティングを追加します。

Route::get('hoge', [HogeController::class, 'view']);

テンプレートファイルの追加

ディレクトリ: resources/views/ にテンプレートファイル: hoge.blade.php を追加する。

<!DOCTYPE html>
<html>
  <head>
  <meta charset="utf-8" />
  <title>test</title>
  </head>
  <body>
    {{$msg1}}, {{$msg2}}
  </body>
</html>

動作確認(2)

ブラウザでhttp://localhost/hoge にアクセスすると、Hoge!, Fuga... が表示される。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?