Ir para conteúdo
  • ×   Você colou conteúdo com formatação.   Remover formatação

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Conteúdo Similar

    • Por jpierredraw
      Olá,
       
      Tenho o seguinte cenário e não consigo resolver. Se alguem conseguir por favor me clarear as ideias.
      Tenho uma tabela noticias e gostaria que cada noticia tivesse mais que uma categoria e subcategoria.
      Criei uma tabela "noticia_categorias_relacionadas" informando o ID da noticia e suas respectivas categorias e subcategorias.
      Como montar um sql puxando dessas tabelas?
       
      Desde ja agradeço.
       
      Consegui resolver com um relacionamento simples entre duas tabelas, tipo, um select normal. Obrigado
       
       
       
       
    • Por Selitto
      Sei que meu modelo não está bem certo, gostaria que pudessem me ajudar.
      https://udemy-images.s3.amazonaws.com/redactor/raw/2017-08-31_05-11-29-ea577932f32b32dc3d8ddffb2df8941b.jpg
      https://udemy-images.s3.amazonaws.com/redactor/raw/2017-08-31_17-04-28-9bd01e59268463feac5400c331a8e5ce.png
       
      Como se comporta uma relação aonde tenho Usuários e esses relacionamentos, me disseram 1..n --- 1..n mas eu acho que seja 1..1 --- 1..1
       
      E como relaciono dois usuários com empréstimo por exemplo no modelo lógico? Preciso de 2 chaves estrangeiras para id-usuario e os livros? Meu professor disse que não pode ter 2 relações entre tabelas.
      Preciso mesmo de ajuda para montar esse banco, o que estou achando mais difícil, é como ter essas relações aonde preciso de 2 usuários, por exemplo numa avaliação preciso saber quem fez e quem recebeu? Empréstimo que solicitou e quem recebeu? assim por diante.
    • Por GiselePassoni
      Estou tentando fazer o relacionamento entre 3 tabelas no laravel. Com 2 tabelas eu consegui, graças a ajuda do fórum, mas não estou conseguindo fazer funcionar com 3 tabelas. o relacionamento é o seguinte:

      Tenho 3 tabelas:

      Noticias, Fotos e Unidade (unidades escolares)

      tabela noticia -> id_noticias

      tabela fotos-> id_fotos e id_noticias

      tabela noticia_unidade -> id_noticias e id_unidade
      O relacionamento noticias com fotos está ok: na página principal aparecem 2 noticias e uma foto de cada. Agora preciso que seja filtrado por unidade: Na página da faculdade aparecer apenas as noticias da uniadde 2, por exemplo.

      Seguem os models e controllers: 



      Controller public function index() { $not_faculdade = Noticia::with(['foto' => function($query){ $query->get()->first(); }]) ->with(['unidade' => function($query2){ $query2->where('id_unidade','2') ->get(); }]) ->orderBy('id_noticias','DESC') ->take(2) ->get(); // dd($not_faculdade); return view('pages_faculdade.noticia')->with('not_faculdade',$not_faculdade); } Relacionamentos class Noticia extends Model { protected $table = 'noticias'; protected $primaryKey = 'id_noticias'; public $timestamps = false; protected $dates = ['data']; protected $fillable =[ 'texto', 'titulo', 'legenda', 'pasta', 'subtitulo', 'evento', 'titulo_evento' ]; public function foto() { //return $this->hasMany(Foto::class); return $this->hasMany('App\Foto','id_noticia','id_noticias'); } public function unidade() { //return $this->hasMany(Foto::class); return $this->belongsTo('App\Unidade','id_noticias','id_noticia'); } } class Unidade extends Model { protected $table = 'noticia_unidade'; // protected $primaryKey = 'id_noticia, id_unidade'; public $timestamps = false; protected $dates = ['deleted_at']; protected $fillable = [ 'id_unidade', 'id_noticia' ]; public function noticias() { return $this->hasMany('App\Noticia','id_noticias','id_noticia'); } } na view está assim: @foreach ($not_faculdade as $key=> $not) <div class="col-md-6"> <div class="panel-heading"> <div class="painel_foto"><img src={{asset('public/'.$not->foto[0]->endereco)}}></div> <h4>{{ $not->titulo }}</h4> <p align="justify"> <a href="#" class="noticia"> {{$texto = substr($not->texto,0,150)." ..."}} </a> </p> </div> </div> @endforeach Como disse, as 2 noticias com a foto de "capa" aparecem normalmente, mas não funciona o filtro.

      Se eu der um dd($not_faculdade), é mostrado os relacionamento aparentemente certos!

      O que poderia estar errado?

    • Por JosimarNew
      Olá amigos, segue em anexo um diagrama onde faço o relacionamento entre entidades, subentidades e atributos. Gostaria que pessoas mais experientes comentassem e me apresentassem um senso crítico a respeito.
       
       
    • Por GiselePassoni
      Boa tarde!
      Tenho uma tabela de notícias e uma tabela de fotos. Cada notícia possui várias fotos. Na home tem que aparecer as duas últimas notícias e a respectiva foto de destaque.
      os Models estão assim:
      class Noticia extends Model { protected $table = 'not_noticias'; protected $primaryKey = 'id_noticias'; public $timestamps = false; protected $dates = ['deleted_at']; protected $fillable =[ 'texto', 'titulo', 'legenda', 'pasta', 'subtitulo', 'evento', 'titulo_evento' ]; public function foto() { //return $this->hasMany(Foto::class); return $this->hasMany('App\Foto','id_noticia','id_noticias'); } } class Foto extends Model { protected $table = 'not_fotos'; protected $primaryKey = 'id_foto'; public $timestamps = false; protected $dates = ['deleted_at']; protected $fillable = [ 'nome', 'endereco', 'id_noticia' ]; public function noticias() { return $this->belongsTo('App\Noticia','id_noticias','id_noticia'); } } O controller está assim:
      Class NoticiasController extends Controller {     public function index()       {       }     public function noticia()       {         $noticias = Noticia::with(['Foto' => function($query){                     $query->get()->first();//first()find(1)                  }])                 ->orderBy('id_noticias','DESC')                 ->take(2)                 ->get();        //dd($noticias);        return view('inc_home.noticias')->with('noticias',$noticias);       }   } na view noticias.blase.php está assim;
      @foreach ($noticias as $key=> $not) <div class="col-md-6"> <div class="panel-heading"> <img src={{asset('public/'.$not->fotos->endereco)}}> <h4>{{ $not->titulo }}</h4> <p align="justify"> <a href="#" class="noticia"> {{$texto = substr($not->texto,0,150)." ..."}} </a> </p> </div> </div> @endforeach  
      Ao tentar exibir a view, aparece: Trying to get property of non-object (View: C:\xampp\htdocs\pro_fundec\resources\views\inc_home\noticias.blade.php)
      Não sei o que está errado!
      Se na view eu deixo apenas assim: <img src={{asset('public/'.$not->endereco)}}>  aparece o titulo e texto, mas as imagens não
       
      Aguardo pela ajuda!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.