Laravel 5

Validate un form avec le même name

  • Avatar de anonymus
    Membre depuis :
    24/08/2019
    Messages :
    8

    Bonjour,

    Je cherche à faire valider tous les champs d'un formulaire pour qu'ils soient tous "required". Cependant, tous les name de mon form ont cette forme :

    ... name="{{ $test->id }}[product]" ...

    @foreach($tests as $test)

    Comment faire ? J'ai testé quelque chose comme

    $this->validate($request, [
    '*.product' => 'required'
    ]);

    mais rien...

    Merci de votre aide

  • Avatar de Dom
    Membre depuis :
    17/07/2017
    Messages :
    35

    ils s'appellent tous product ??
    Et le nom de ton champs commence par des chiffres ?

  • Avatar de anonymus
    Membre depuis :
    24/08/2019
    Messages :
    8

    Oui, comme un tableau de valeurs. Chaque champ sera une nouvelle ligne dans la base de données

  • Avatar de MaitrePylos
    Membre depuis :
    27/05/2013
    Messages :
    267

    le plus simple ne serait pas de faire un name='product[]' et de faire une rule sur required_without_all https://laravel.com/docs/5.1/validation#rule-required-without-all

  • Avatar de Aetius
    Membre depuis :
    29/09/2019
    Messages :
    3

    Pour la validation je fais comme suit :

    $data = request()->validate([
    'title'=>['required', 'string'],
    'content'=>['required', 'string'],
    'image'=> ['required', 'image']
    ]);

Vous ne pouvez pas répondre à ce sujet.