Boa noite pessoal estou com um pequeno problema,
eu tenho uma tabela chamada tb_foto, e uma tabela de usuario. e estou tentando pegar todas as fotos relacionadas a um usuário pela FK usuario_id na tabela tb_foto.
Criei o model das duas classes tudo certinho, porém quando faço o 'select' para pegar não está funcionando em termos.
classe das fotos
<?php namespace harembr;
use Illuminate\Database\Eloquent\Model;
class Fotos extends Model {
public $timestamps = false;
protected $table = 'tb_foto';
protected $fillable = array('id', 'caminho_foto', 'foto_p', 'usuario_id');
public function usuario(){
return $this->belongsTo('harembr\Usuario');
}
}
classes do usuario
<?php namespace harembr;
use Illuminate\Database\Eloquent\Model;
class Usuario extends Model {
public $timestamps = false;
protected $table = 'tb_usuarios';
protected $fillable = array('nome_usuario', 'email', 'senha_usuario', 'atendimento_id', 'servicos_id', 'idade_usuario', 'sexo', 'telefone','telefone_w', 'altura', 'peso', 'descricao', 'assinatura_id', 'id');
public function foto(){
return $this->hasMany('harembr\Fotos');
}
}
tento fazer assim no meu controller. sendo que o $usuario->id pego na linha anterior a essa ai.
$fotos = Fotos::where('usuario_id', '=', $usuario->id)->get();
se eu trocar o get() e colocar o first(), ele funciona, mas com um problema. no banco tem apenas 2 fotos e ele traz 3.
e se colocar o get(); ele me mostra o seguinte erro.
Undefined property: Illuminate\Database\Eloquent\Collection::$caminho_foto (View: /home/dionisio/Projetos/PHP/harembr/resources/views/inicio.blade.php)
na minha view está assim
<?php
if (empty($f)) { ?>
<img src="/img/foto_padrao.jpg" class="img-responsive">
<?php }else{
foreach ($f as $foto) { ?>
<img src="{{$f->caminho_foto}}" class="img-responsive">
<?php
}
}
?>
quem puder me ajudar, agradeço