“行动没有定义”,但确实如此

时间:2017-07-27 19:58:46

标签: php laravel laravelcollective

如果这只是我对如何使用Laravel的误解,我道歉。

我正在学习Laravel并且我正在构建一个小应用程序,但是,我尝试在视图中创建一个表单以将数据传递给Controller但是我得到以下消息。

ErrorException
Action App\Http\Controllers\clientesController@confirmarEdit not defined. (View: (redacted)\laravel\resources\views\clientesEditar.blade.php)

此方法确实在clientesController中定义,其中所有其他控制器都已定义并正常工作:

public function confirmarEdit($id)
{
    ...
}

我正在使用LaravelCollective包来使用表单,在e documentation which states I can use pass form data to Controllers之后,我使用View调用此方法,这样:

<!DOCTYPE html>
<html>
  <head>
    <title>Modificar Cliente {{ $cliente[0]->id }}</title>
  </head>
  <body>
    <ul>
      {{Form::open(['action' => ['clientesController@confirmarEdit', $cliente[0]->id]])}}
      Nombre: {{ Form::text('cnom', $cliente[0]->nombre)}}
      Apellido: {{ Form::text('cape', $cliente[0]->apellido)}}
      Empresa: {{ Form::text('cnom', $cliente[0]->empresa)}}
      <input type="submit" value="Editar">
      {{Form::close()}}
  </body>
</html>

从路由调用方法有效,但如果我从视图中调用它,那么我做错了什么?

提前谢谢。

2 个答案:

答案 0 :(得分:0)

试试这个:

{ !! Form::open(array('action' => "clientesController@confirmarEdit", $cliente[0]->id)) !!  }

答案 1 :(得分:0)

我想你可以试试这个:

{!! Form::open(array('action' => "clientesController@confirmarEdit", $cliente[0]->id)) !!}

希望这对你有用!!!