使用表单模型绑定时,我是否必须填写控制器的方法?

时间:2018-08-22 02:38:34

标签: php laravel laravel-5.6 laravelcollective

我在做,努力。我在视频中看到在表单模型绑定中使用的是这样的:

{!! Form::model($usu, ['route' => ['prurequests.update', $usu->id],'method' => 'PUT']) !!}

,但它们的更新功能为空。

我想知道我是否使用prurequests.updateprurequests.editprurequests.store填写这些方法吗?

我是否必须指定方法,如果我放入.store或.edit或.update,因为我在互联网上看到他们不使用它,但我不使用它,我得到了这个信息:

  

Symfony \组件\ HttpKernel \ Exception \ MethodNotAllowedHttpException   没有消息

在我的应用中,我有下一个:

{!! Form::model($usu, ['route' => ['prurequests.update', $usu->id],'method' => 'PUT']) !!}
  {!! Form::label('nombre', 'Modifique el nombre') !!}
  {!! Form::text('nombre', null) !!}
  {!! Form::label('slug', 'Modifique el slug') !!}
  {!! Form::text('slug', null) !!}
  {!! Form::submit('Actualizar') !!}
{!! Form::close() !!}

路线:

Route::resource('/prurequests','PruebasControllers\PrurequestsController', ['parameters' => ['prurequests' => 'usuario2']]);

控制器:

public function update(Request $request, $id)
 {
   $usuario = Usuario2::findOrFail($id);
   $usuario->update($request->all());
   return 'datos guardados';
 }

我不知道是否可以让我的更新方法为空

1 个答案:

答案 0 :(得分:0)

使用laravel资源时,插入更新和删除很容易。 查看我的工作示例

在“编辑”方法中:

public function edit($id)
    {
        $data['category'] = BlogCategory::find($id);
        return view('category.edit', compact(['data']));
    }

视图中:

{!! Form::model($category, ['route' => ['category.update', $category->id],'method' => 'PUT']) !!}
  {!! Form::label('nombre', 'Modifique el nombre') !!}
  {!! Form::text('nombre', null) !!}
  {!! Form::label('slug', 'Modifique el slug') !!}
  {!! Form::text('slug', null) !!}
  {!! Form::submit('Actualizar') !!}
{!! Form::close() !!}

更新方法:

public function update(Request $request, $id)
    {

        $data = $request->all();          
        $category = BlogCategory::find($id);
        $category->update($data);  
        return redirect(route('category.index'));
    }