Olá, estou com erro ao listar a categoria, o sistema está cadastrando o produto sem problemas, mas para listar esta dado erro, segue os códigos
Produto.php
<?php namespace senge;
use Illuminate\Database\Eloquent\Model;
//classe do banco produtos, ele já entende que a tabela está no plural Produto - produtos
class Produto extends Model {
//Retirar os campos de data e update
public $timestamps = false;
//seta o nome da tabela
//protected $table = 'produtos';
//insere os produtos sem precisar da clausula insert no sql
//nesse array efetuamos a adição de campos no cadastro
protected $fillable =
array ('nome','descricao','quantidade','valor', 'categoria_id');
public function categoria(){
return $this->belongsTo('senge\Categoria');
}
//
}
Categoria.php
<?php namespace senge;
use Illuminate\Database\Eloquent\Model;
class Categoria extends Model {
public function produtos(){
return $this->hasMany('senge\Produto');
}
}
listagem.blade.php
@extends('layout.principal')
@section('conteudo')
@if(empty($produtos))
<div class="alert alert-danger">
Você não tem nenhum produto cadastrado.
</div>
@else
<h1>Listagem de produtos</h1>
<table class="table table-striped table-bordered table-hover">
@foreach ($produtos as $p)
<!-- Criando lógica -->
<tr class="{{$p->quantidade <=1 ? 'danger' : ''}}">
<td>{{$p->nome}}</td>
<td>{{$p->valor}}</td>
<td>{{$p->descricao}}</td>
<td>{{$p->quantidade}}</td>
<td>{{ $p->categoria->nome }}</td>
<td><a href="produtos/mostra/{{$p->id}}">
<span class="glyphicon glyphicon-search"></span>
</a>
</td>
<td><a href="produtos/remove/{{$p->id}}">
<span class="glyphicon glyphicon-trash"></span>
</a>
</td>
</tr>
@endforeach
</table>
@endif
<h4>
<span class="label label-danger pull-right">
Um ou menos itens no estoque
</span>
</h4>
@if(old('nome'))
<div class="alert alert-success" role="alert">
Produto <strong>{{old('nome')}}</strong> adicionado com sucesso!
</div>
@endif
@stop
Erro:
Whoops, looks like something went wrong.
2/2
ErrorException in 9f682163535c62a42e43a0699a5bf608 line 17:
Trying to get property of non-object (View: /home/ondesign/laravel/resources/views/produto/listagem.blade.php)
in 9f682163535c62a42e43a0699a5bf608 line 17
at CompilerEngine->handleViewException(object(ErrorException), '0') in PhpEngine.php line 43
at PhpEngine->evaluatePath('/home/ondesign/laravel/storage/framework/views/9f682163535c62a42e43a0699a5bf608', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'produtos' => object(Collection))) in CompilerEngine.php line 57
at CompilerEngine->get('/home/ondesign/laravel/resources/views//produto/listagem.blade.php', array('__env' => object(Factory), 'app' => object(Application), 'errors' => object(ViewErrorBag), 'produtos' => object(Collection))) in View.php line 142
at View->getContents() in View.php line 111
at View->renderContents() in View.php line 80
at View->render() in Response.php line 44
at Response->setContent(object(View)) in Response.php line 202