Good evening, I'm starting to study Laravel and I came across a problem that already took me a few hours to find a solution. I need to do an update on a form, and when I submit submit I get the error: Herearemycodes:Route:
Route::get('/produtos/edita/{id}','ProdutoController@edita')->where('id','[0-9]+');Route::post('/produtos/atualiza','ProdutoController@atualiza');
Blade:
@extends('layout.principal')@section('conteudo')<h1>EditarProduto:{{$p->nome}}</h1><formaction="/produtos/atualiza" method="post">
<input type="hidden" name="id" value="{{$p->id}}">
<input type="hidden" name="_token" value="{{{ csrf_token() }}}" />
<div class="form-group">
<label>Nome</label>
<input name="nome" class="form-control" value="{{$p->nome}}">
</div>
<div class="form-group">
<label>Descrição</label>
<input name="descricao" class="form-control" value="{{$p->descricao}}">
</div>
<div class="form-group">
<label>Valor</label>
<input name="valor" class="form-control" value="{{$p->valor}}">
</div>
<div class="form-group">
<label>Quantidade</label>
<input type="number" name="quantidade" class="form-control" value="{{$p->quantidade}}">
</div>
<button type="submit" class="btn btn-primary btn-block">Adicionar</button>
</form>
@stop
Controller:
public function edita($id)
{
$produto = Produto::find($id);
return view('produto.editar')->with('p', $produto);
}
public function atualiza()
{
$params = Request::all();
$produto = Produto::find($params->id);
$produto->fill($params->except('id'));
$produto->save();
return redirect()->action('ProdutoController@lista');
}