我的情况是这样的:
我的观点:
{!! Form::open(['url' => 'product/store', 'class'=>'form-horizontal', 'method'=>'POST', 'files' => true]) !!}
...
<input type="file" class="form-control" name="photo[]" multiple>
...
{!! Form::close() !!}
我的控制器:
public function store(CreateProductRequest $request)
{
dd($request->all());
...
}
我在这里设置了所需:
<?php
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class CreateProductRequest extends FormRequest
{
public function authorize()
{
return true;
}
public function rules()
{
return [
'name'=>'required',
...
'photo[]'=> 'required|mimes:jpeg,bmp,png,jpg|max:7024',
];
}
}
当名称是数组时,它不起作用
当我点击提交时,它将返回表单添加
我该如何解决这个问题?
答案 0 :(得分:1)
这样做。它会起作用。
'photo.*' => 'required|mimes:jpeg,bmp,png,jpg|max:7024'
答案 1 :(得分:1)
如果要验证数组表单字段,可以使用*字符检索每个数组元素的所有消息:
'photo.*' => 'required|mimes:jpeg,bmp,png,jpg|max:7024'
答案 2 :(得分:0)
'photo'=&gt; “所需|阵列”, 'photo。*'=&gt; '默剧:JPEG,BMP,PNG,JPG |最大值:7024'
答案 3 :(得分:0)
对于assoc数组,如:
$skills = [['id'=> 1, 'name' => 'photoshoot', photo => File], ['id'=>2, 'name'=> 'someskill', photo => File]];
对于DB验证中的验证规则将如下:
'skills.*.id' => 'required|exists:skills,id',
'skills.*.photo' => 'required|mimes:jpeg,bmp,png,jpg|max:7024'