Variation of the dynamic form of Laravel 5

Does anyone know how to test for something like a dynamic form below?

<input type="text" name="candidates[0][candidate_number]" value=""/>
<input type="text" name="candidates[0][givennames]" value=""/>

<input type="text" name="candidates[1][candidate_number]" value=""/>
<input type="text" name="candidates[1][givennames]" value=""/>

I think I tried everything!

+4
source share
2 answers

Assuming you are using form requests , this is pretty easy. In your form request class:

public function rules() {
    $rules = [];

    foreach($this->input('candidates') as $key => $value) {
        $rules["candidates.{$key}.candidate_number"] = ['required', 'numeric'];
        $rules["candidates.{$key}. givennames"] = ['required'];
    }

    return $rules;
}
+3
source

Try this approach:

foreach($request->input('array') as $i => $value) {
    $rules['array.'.$i] = 'validation rules here';
}

Your rules should look like this:

array.0 => 'rule'
array.1 => 'rule'

etc.

0
source

Source: https://habr.com/ru/post/1615827/


All Articles