我的HTML表单包含文本和文件字段:
<form method="post" action="{{url('control')}}" enctype="multipart/form-data">
...
<input type="text" class="form-control" name="business_name" id="business_name"
...
<label for="business_name">Brand Logo</label>
{{Form::file('logo')}}
{{{ $errors->first('logo') }}}
</form>
我验证了输入:
...
'logo' => 'image',
如果withInput
产生错误,我会返回withErrors
和Validator
表单:
return Redirect::to('control')->withInput($inputs)->withErrors($validator->getMessageBag());
如果在填写过程中没有选择任何文件,这样可以正常工作,我将返回到withInput
和withErrors
但是
如果我在填充过程中选择了一个文件并且我提交了无效输入,那么我这次返回的/control
完全为空。
修改
在评论建议之后,我检查了Laravel日志:
[2013-12-23 17:05:17] production.ERROR: exception 'Exception' with message 'Serialization of 'Symfony\Component\HttpFoundation\File\UploadedFile' is not allowed' in C:\wamp\www\*****\***\vendor\laravel\framework\src\Illuminate\Session\Store.php:212
到目前为止,我似乎无法解决任何建议。
谢谢
答案 0 :(得分:1)
我最初在评论中有这个,但无意中删除了它。我会将它作为答案重新发布,以防万一其他人偶然发现这一点。
通过withInput()
而没有$inputs
参数,如下所示:
Redirect::to('control')->withInput();
withInput()
不需要参数。