1

Laravel 5.7 検証属性をカスタマイズする場合、属性名にワイルドカードを含めることはできますか? ここでワイルドカードを示す正しい方法を判断できません。

すべての電話番号と電子メールを含む特定の連絡先の詳細を一覧表示する連絡先ページがあります。このページから、これらのそれぞれを編集したり、新しいものを追加したりできます。そのため、foreach ステートメントを使用してこれらのそれぞれを表示し、フォーム フィールド名に ID 番号を含めました。

  • phone_areacode_{{ $number->id }}
  • phone_number_{{ $number->id }}
  • phone_extension_{{ $number->id }}

これにより、名前が一意になり、検証が失敗したときに、編集中の特定の番号または電子メールにのみ関連するエラー メッセージを表示できることを意味します。しかし、表示されるエラーメッセージに番号が含まれているため、「電話の市外局番 10 の形式が無効です」などのメッセージが表示されます。または「電話番号 27 は 20 文字を超えることはできません。」

検証言語ファイルで属性名を定義するときに、属性名にワイルドカードを使用する方法はありますか? 基本的に私はこれを行うことができるようにしたいと思います:

'attributes' => [
  'phone_areacode_*.*' => 'phone areacode',
],

そうでない場合、コントローラーの @update メソッドで属性名を定義するにはどうすればよいですか?

4

2 に答える 2