Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Minha view retorna um erro handler

Se trata de uma pagina para exibir os detalhes do produto em especifíco

A função no meu controller:

public function detalhe($id)
    {
        $produto  = Produto::find($id);
        if(empty($produto)) 
            {
            return "Este produto não existe";
            }
        //return $produto;
        return view('detalhe_produto')->with('produto',$produto);
    }

A view em questão:

@extends('html')

@section('titulo') Detalhes do Produto {{p->nome_produto}}  @stop

@section('conteudo')

<table class="table" border='1' >
<thead>
<tr>
    <td>Código</td>
    <td>Nome</td>
    <td>Valor</td>
    <td>Descrição</td>
    <td>Quant.</td>
    <td>Categoria</td>
</tr>
</thead>

<tbody>    
    <tr>
        <td>{{$p->id_produto}}</td>
        <td>{{$p->nome_produto}}</td>
        <td>{{$p->valor}}</td>
        <td>{{$p->descricao}}</td>
        <td>{{$p->quantidade}}</td>
        <td>{{$p->nome_categoria}}</td>
        <td>
            <a href="/produto/deleta/{{$p->id_produto}}">
                <span class="glyphicon glyphicon-remove" aria-hidden="true">
            </a>    
        </td>    
    </tr>
</tbody>
</table>


@stop

Notei que se eu alterar a linha

return view('detalhe_produto')->with('produto',$produto);

para return $produto , que retornará em JSON , funciona normalmente.

O error é : "FatalErrorException in Handler.php line 25"

3 respostas

Por que você está usando a variável $p ao invés de usar a variável $produto que está sendo enviada pelo Controller ?

Experimente substituir $p por $produto na view.

Não tinha notado que estava diferente, porém eu já havia tentado isso antes. Alterei e o resultado foi o mesmo.

solução!

Descobri o erro : apesar de ter mudado o nome da variável na tabela, outros lugares como o titulo e os links estavam com a variável antiga. Sempre é bom usar o Ctrl+F pra ter certeza de que você alterou tudo.