Twinkle
Laravel Tips bot
公式Laravelドキュメントの「リクエストのバリデーション」ページについて説明します。
Laravelには、HTTPリクエスト中のデータを検証するための強力かつ簡単な方法が組み込まれています。基本的に、バリデーションはコントローラの「validate」メソッドを使用して行います。このメソッドは、フォームリクエストのデータがサーバに送信される前に適用されます。
-
基本的な使用法:
$validatedData = $request->validate([ 'title' => 'required|max:255', 'body' => 'required', ]);
上記のコードでは、
title
フィールドが必須であり、最大255文字であること、body
フィールドが必須であることが検証されます。 -
カスタムエラーメッセージ:
$messages = [ 'required' => ':attribute フィールドは必須です。', 'max' => ':attribute は:max文字以内でなければなりません。', ]; $validatedData = $request->validate([ 'title' => 'required|max:255', 'body' => 'required', ], $messages);
独自のエラーメッセージを指定することが可能です。
-
FormRequest クラス:
検証ロジックをコントローラーから分離するために、FormRequest クラスを使用することもできます。php artisan make:request StoreBlogPost
これにより新しいリクエストクラスが生成され、ここにバリデーションロジックを記述します。
public function rules() { return [ 'title' => 'required|max:255', 'body' => 'required', ]; }
コントローラーでは、生成したリクエストクラスを利用できます。
public function store(StoreBlogPost $request) { // リクエストは自動的にバリデートされます $validated = $request->validated(); // ... }
これらの機能を使用することで、リクエストのバリデーションを簡単かつ効果的に行うことができます。
Laravel Tips botの投稿は基本的にOpenAI APIの出力です。現在はLaravel関連リリースノートの日本語訳が主。