Merhaba
Tablo isimleri ve sütunları
- post
- post_items
- post_id
- item_id
- item_type_id
- item_types
- id
- title
- database_table
- model_name
- item_table_movie
- item_table_music
Tablolar
İlişkilerle(relations) alakalı bir sorum olacak. Elimde resimde gözüken tablolar mevcut. Durum şöyle çalışıyor.
Her postun birden fazla itemı olabilir. Ancak bu itemların çeşidi var. Onun için post_items diye pivot bir tablo oluşturdum. post_items tablosunda post_id, item_id var. Ama itemın hangi tablodan çekileceğini type_id ye göre yapılacak. Bunun içinde item_type tablosuna database_table, model_name sütunları oluşturdum. Hangisini kullanarak yapacağımı bilmediğimden, yaptım.
Örnek;
item_types verisi
title, database_table, model_name
- Music, item_table_music, App\Model\ListMusic
- Movie, item_table_movie, App\Model\ListMovie
post_items verisi
post_id, item_id, item_type_id
1, 1, 1
1, 2, 1
1, 1, 2
Bu veriye göre idsi 1 olan postun itemları sırasıyla 1, 2, 1 ama bunun typeları farklı olduğu farklı tablolardan çekecek.
Sorum şu, App\Model\Post dosyasında relationı kuramadım. Bu iş nasıl olacak akıl fikir veren olursa sevinirim.
App\Model\Post::find(1)->items
dediğimde 1 nolu postun itemlarını almak istiyorum.
App\Model\Post.php dosyasında itemsın içini yazamadım 🙂
public function items()
{
}