表单模型绑定和文件上载

时间:2013-12-19 17:42:24

标签: laravel laravel-4

我之前得到的答案是关于如何在laravel中创建编辑/更新详细信息表单,答案是使用Form :: model(modelName)。然而,正在更新的页面是处理插入的相同页面。我有以下表格开头:

{{ Form::open(array('action' => 'SomeController@basic','files' => true)) }} 

如何更改此设置以使用form :: model?我也在同一页面上传文件(个人资料图片)。

2 个答案:

答案 0 :(得分:5)

Laravel 4或5 Form< - >模型绑定

对于原始海报来说,可能是“迟到”,但对于那些寻找解决方案的人来说,这可以作为后来的参考。

L4解决方案是:

{{ Form::open($object, array('method' => 'PATCH', 'action' => array('SomeController@update', $object->id),'files' => true)) }} 

对于Laravel 5,您将使用:

{!! Form::model($object, ['method' => 'PATCH', 'action' =>  ['ObjectsController@update', $object->id], 'files' => true]) !!} 

回家这有帮助!

答案 1 :(得分:4)

表单模型绑定可以通过将表单声明为

来完成
{{ Form::model($user, array('action' => 'SomeController@post', 'files'=> true)) }}

您将模型传递给视图,例如此处$ user是模型。

$user = User::find(1);
return View::make('editUser')->with(compact('user'));

对于文件上传,如果$ user是isset,则可以显示图像。随上传按钮。单击更新时,您可以检查

if(Input::has('file'))

然后移动文件并上传数据库中的路径。可能有一个不同的解决方案。

这是你在找什么?