在我的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()方法将显示现有值?
我敢肯定,我忽略了一些非常简单的东西,因为我还没有找到其他人的问题......
我为我的开发环境设置了 CentOS VM,并使用 NFS 在我的 Ubuntu 机器上安装了 web 根目录。那部分工作正常;但是,所有子目录都不可写。我可以看到它们的内容(只读),但不能将任何新文件添加到子目录中。但是,我可以将文件写入挂载点的父目录。
[root@dev ~]# cat /etc/exports
/var/www/html 192.168.122.1(rw,sync,no_root_squash,no_subtree_check)
Run Code Online (Sandbox Code Playgroud)
据我了解,由于 NFS 共享是用 rw 和 no_root_squash 挂载的,它应该允许任何用户写入这些目录。有人可以对此有所了解吗?我很困惑,至少可以说,不幸的是,谷歌并不是很有帮助。
当我从主机查看权限时,它说文件归 nobody:nogroup 所有,但 VM 上 ls -hal 的输出显示它归我在主机上使用的同一个 username:group 所有。PAM 不应该启动并允许我的主机用户访问写入吗?
归根结底,我想要实现的是所有当前和任何新的子目录都可以由我的 IDE 读取/写入。目前,只有父目录/文件是。目前,我必须通过 ssh 进入主机并在那里创建文件和/或进行更改。我宁愿不重复我的工作,并且真正希望 HTML 开发环境可以从任何允许访问 /etc/exports 的主机写入。
我期待听到其他人如何克服这一点。并且,提前感谢您的时间和洞察力。
[tangent] 也许我应该最终将 Samba 设置为域控制器,并将其用于我所有主机的身份验证。我很确定这会使这个问题无效,但我还没有时间玩这个……啊。 [/切线]