山傘のプログラミング勉強日記

プログラミングに関する日記とどうでもよい雑記からなるブログです。

Laravel 学習 Part. 5

Chapter 3 ビューとテンプレート

PHPフレームワーク Laravel入門 第2版

PHPフレームワーク Laravel入門 第2版

GitHub - YamaKasa3/laravelapp

view と レスポンス

Route::getでviewメソッドの戻り値を返すと、Responseインスタンスが返されテンプレートの内容が表示されます。

Bladeテンプレート

マスタッシュ構文を使って変数の展開を行うことができます。

csrf_field() を使うことでCSRF対策を行います。

    <form method="POST" action="/hello">
        {{ csrf_field() }}
        <input type="text" name="msg">
        <input type="submit">
    </form>

POST

POST送信はRoute::postというメソッドによって行われます。

class HelloController extends Controller
{
    public function index()
    {
        $data = ['msg' => 'お名前を入力してください'];

        return view('hello.index', $data);
    }

    public function post(Request $request)
    {
        $msg = $request->msg;
        $data = ['msg' => 'こんにちは、' . $msg . 'さん!'];

        return view('hello.index', $data);
    }
}

ifディレクティブ

@if (条件式)
@elseif(条件式)
@else
@endif

Bladeのコメントアウト

{{-- このコメントはHTML中には存在しない --}}

上記のようにコメントアウトします。

レイアウト

@component, @slot, @section などを使ってレイアウトを作成します。