data-form, data-validate, data-lang
コメント記法
data-formで指定したフォーム部品で入力した値が、data-validateで指定した条件を満たしているかをLaravelのバリデーと機能を使って検証します。data-langでエラーメッセージを設定します。data-langがない時は、Laravelのエラーメッセージを表示します。
Example
/resources/views/example.blocs.html
8行目 HTML5でバリデーションを指定
9行目 コメント記法で記述
11行目 Bladeでエラーメッセージを表示
<html> <span data-val=$name>名前</span> <form method="post"> @csrf <label for='name'>名前</label> <input type='text' name='name' data-filter='katakana' required /> <!-- data-form="name" data-validate="required" data-lang="必須入力です。" --> @error('name') <div>{{ $message }}</div> @enderror <input type='submit' /> </form> </html>
/routes/web.php
8行目 バリデーション設定を取得
9行目 バリデーション
use Illuminate\Http\Request; Route::get('/blocs', function () { return view('example'); }); Route::post('/blocs', function (Request $request) { list($validate, $message) = \Blocs\Validate::get('example', $request); empty($validate) || $request->validate($validate, $message); return view('example', $request->all()); });
http://127.0.0.1:8000/blocs
<html> <span>名前</span> <form method="post"> <input type="hidden" name="_token" value="eSkvQ8hOiXkYZsWycvX2Wj64z8g3lULzZpnqVCSw"> <label for='name'>名前</label> <input type='text' name='name' required value="" /> <div>必須入力です。</div> <input type='submit' /> </form> </html>