listagem.blade.php
@extends('layout.principal')
@section('conteudo')
<h1>Listagem de produtos</h1>
<a href="/produtos/novo" class="btn btn-primary">Novo</a>
<table class="table">
@if(empty($produtos))
<div class="alert alert-danger">
Nenhum produto encontrado
</div>
@else
@foreach($produtos as $produto)
<tr {{ $produto->quantidade <= 1 ? 'class=danger' : '' }}>
<td> {{ $produto->nome }} </td>
<td> {{ $produto->valor }} </td>
<td> {{ $produto->descricao }} </td>
<td> {{ $produto->quantidade }} </td>
<td> {{ $produto->tamanho }}</td>
<td> {{ $produto->categoria->nome }} </td>
<td>
<a href="/produtos/mostra/{{ $produto->id }}">
<span class="glyphicon glyphicon-search"></span>
</a>
</td>
<td>
<a href="/produtos/remove/{{ $produto->id }}">
<span class="glyphicon glyphicon-trash"></span>
</a>
</td>
</tr>
@endforeach
@endif
</table>
@if(old('nome'))
<p class="bg-success">Produto {{ old('nome') }} adicionado com sucesso</p>
@endif
@stop
Categoria.php
<?php
namespace estoque;
use Illuminate\Database\Eloquent\Model;
class Categoria extends Model
{
public function produtos(){
return $this->hasMany('estoque\Produto');
}
//
}
Produto.php
<?php
namespace estoque;
use Illuminate\Database\Eloquent\Model;
class Produto extends Model
{
protected $table = 'produtos';
protected $fillable = ['nome', 'descricao', 'quantidade', 'valor', 'tamanho', 'categoria_id'];
public $timestamps = false;
public function categoria(){
return $this->belongsTo('estoque\Categoria');
}
}
Ao tentar acessar o relacionamento, eu recebo um erro de compilação da view, dizendo que eu estou tentando acessar propriedades de algo que não é um objeto.