【发布时间】:2017-06-30 00:05:38
【问题描述】:
我有以下表单请求:
class FileRequest extends Request
{
public function authorize()
{
return true;
}
public function rules()
{
$rules = [];
if($this->file_type == 'image')
$rules['file'] = 'required|image|mimes:jpg,jpeg,gif|max:244|image_size:>=360,>=180';
else
$rules['file'] = 'required|mimes:doc,pdf,docx,txt,rtf|max:1000';
return $rules;
}
public function messages()
{
$messages = [
'file.image_size' => 'The image size is incorrect.'
];
return $messages;
}
public function response(array $errors)
{
$content = "<textarea data-type=\"application/json\">{\"ok\": false, \"message\": \"" . $errors[0] . "\" }</textarea>";
return response($content);
}
}
如何从错误数组中返回第一个错误。
当我手动创建验证器时,我可以执行以下操作:$validator->errors()->first(),但这在使用 FormRequest 类时不起作用。执行errors[0] 只会给我一个偏移异常错误。
我正在使用 iframe 提交,这就是我需要返回上述响应的原因。
任何帮助表示赞赏。
【问题讨论】:
标签: php arrays validation laravel-5.1