在我的PhotosController中,我试图修改编辑操作,以便它在Form :: file()输入字段中显示现有值(并且,如果验证失败,它将重新填充该字段).
if ($validation->passes())
{
// saves the image on the FS and updates the db entry
}
return Redirect::route('photos.edit')
->withInput(Input::all())
->withErrors($validation)
->with('message', 'There were validation errors.');
Run Code Online (Sandbox Code Playgroud)
上传过程工作正常,但是当我查看现有记录时,或者如果验证在创建时失败,则Form :: file不显示该值.我查看了api中的方法,它只接受名称和可选的选项数组.而FormBuilder类中的其他方法允许我们使用Input :: old()设置值.
我已经尝试将以下值传递给withInput,但它们一直无济于事:*Input :: all()*Input :: old()*Input :: except('photo_path')*Input :: get ( 'photo_path')
如何更新此项,以便在验证失败时,或者如果用户查看现有记录,Form :: file()方法将显示现有值?
我敢肯定,我忽略了一些非常简单的东西,因为我还没有找到其他人的问题......
我是拉拉维尔新手。我有一个表单寄存器,包含字段是头像,有些字段需要验证。我从计算机上传图片,但是当我提交表单时,如果某些字段未通过验证,则图片文件丢失。如何保留上传的旧照片?对于文本字段,我可以使用 old() 函数来获取旧值,但对于输入文件,我不知道当表单未通过验证时如何保留值。
(有一些建议:当输入文件更改时使用ajax将值放入会话...)
抱歉我的英语水平不好,谢谢。