我有一个包含我想验证的可变输入字段的表单。所以我使用通配符,但它似乎不起作用。
我视图中的代码
@for ($i = 1; $i < 4; $i++)
<div>
<label for="title[{{ $i }}]" class="control-label">Title</label>
<input type="text" name="title[{{ $i }}]">
@if ($errors->has('step-title'.$i))
<span class="help-block">
<strong>{{ $errors->first('step-title'.$i) }}</strong>
</span>
@endif
</div>
@endfor
我控制器中的代码
$this->validate($request, [
'title1' => 'required|alpha_dash',
'title.*' => 'alpha_dash',
]);
奇怪的是,使用&#39; title1&#39; 进行验证工作正常,但不能与&#39; title。*&#39; < / strong>即可。为什么我不能使用通配符?我错过了什么?
答案 0 :(得分:0)
如果您看到alpha_dash规则的文档,您可以注意到您只能使用规则alpha_dash
验证短划线和下划线。
alpha_dash
验证字段可能包含字母数字字符,以及破折号和下划线。
语法title.*
用于验证数组,看看这个。所以我建议你在验证之前用下划线或破折号替换星号。