【发布时间】:2018-07-03 21:37:28
【问题描述】:
在我的应用程序中,有一个可以(理论上)具有无限 task 的表单,我想在我的 Request 中定义一个验证规则,以检查它们之间没有一个是相等的:
发件人:
<select name="task[1][id][]" class="form-control">
..
<select name="task[2][id][]" class="form-control">
..
..
<select name="task[n][id][]" class="form-control">
由于我对 Laravel 验证还不够熟悉,所以我很天真并尝试了以下方法:
'task[1][id][]' => 'different:task[2][id][]', 'task[2][id][]' => 'different:task[1][id][]'
或:
'task[1][id][*]' => 'different:task[2][id][*]', 'task[2][id][*]' => 'different:task[1][id][*]'
或:
'task[*][id][*]' => 'different:task[*][id][*]'
我没有收到任何错误,但验证总是通过。我很确定,有一个好方法可以让这个东西运行起来,但我认为我走错了路..
编辑:(根据要求提供其他信息)
<select name="task[1][id][]" class="form-control">
<option value=""> </option>
@foreach ($users as $user)
<option value="{{ $user->id }}">{{ $user->email }}</option>
@endforeach
</select>
<select name="task[2][id][]" class="form-control">
<option value=""> </option>
@foreach($users as $user)
<option value="{{ $user->id }}">{{ $user->email }}</option>
@endforeach
</select>
目前,我使用的是“硬编码”<select>。没什么特别的……
【问题讨论】:
标签: arrays laravel validation laravel-5