Laravelでカスタムエラーメッセージを作成しています。
第3引数に$messagesを引き渡し、そこに作成したカスタムエラーメッセージを格納しようとしています。
ですが、
php
1Rule::exists('items', 'item_no')->where('category', [1,2]),
のようなバリデーションルールに対するエラーメッセージの記述方法がわかりません。
コードは以下のような感じです。
PHP
1public static function itemValidator(array $arr) 2 { 3 $messages = [ 4 'exists' => 'このアイテムナンバーは存在しません', 5 'exists.where' => 'このカテゴリーのアイテムは選択できません', 6 ]; 7 8 9 $validator = Validator::make($arr, [ 10 11 'item' => [ 12 'exists:items,item_no', 13 Rule::exists('items', 'item_no')->where('category', [1,2]), 14 ], 15 ], $messages); 16 17 return $validator; 18 }
↓↓この部分を修正する必要があるのですが、その正しい記述方法がわかりません。
php
1'exists.where' => 'このカテゴリーのアイテムは選択できません', 2
ちなみに
'exists' => 'このアイテムナンバーは存在しません',
の部分は正しく表示できてるので、
'exists.where' => 'このカテゴリーのアイテムは選択できません',
の部分だけ修正すれば求めている結果が得られそうです。
アドバイスお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2020/09/02 14:55
2020/09/02 14:57