3 tane tablo var
birincisi orders:
class Order extends Model
{
//Table Name
protected $table = 'orders';
//Primary Key
public $primaryKey = 'id';
//Timestamps
public $timestamps =true;
public function user(){
return $this->belongsTo('App\User');
}
public function orderproduct(){
return $this->hasMany('App\OrderProduct');
}
}
ikincisi orderproduct tablosu:
class OrderProduct extends Model
{
//Table Name
protected $table = 'order_product';
//Primary Key
public $primaryKey = 'id';
//Timestamps
public $timestamps =true;
public function order(){
return $this->belongsTo('App\Order');
}
public function product(){
return $this->hasMany('App\Product');
}
}
3.sü product tablosu:
class Product extends Model
{
//Table Name
protected $table = 'products';
//Primary Key
public $primaryKey = 'id';
//Timestamps
public $timestamps =true;
public function orderproduct(){
return $this->belongsTo('App\OrderProduct');
}
}
Relationlardan tam olarak emin değilim.
Yapmak istediğim şey ise kullanıcı order verdikten sonra dashboard sayfasında kullanıcının verdiği orderları göstermek.
Yukarıdaki modellere/tablolara ve relationlara göre kullanıcının vermiş oldugğu orderın datasını çekecek uygun eloquent querysini nasıl yazabilirim ? Yani adam dashboardda verdiği order detayını ve sipariş ettiği productı görecek mesela.
edit:
durum şu şekilde elimizde userın idsi var auth()->user()->id şeklinde onu alıyoruz.
Şimdi yapmamız gereken bu idyi kullanarak 1. tablodan order_date e ve order idsine ulaşmak.
Orderın idsi orderproduct tablosunda order_id olarak foreign key zaten
2. tablodan quantityi çekmek ve 2. tablodaki product_id yi kullanarak 3. tablodan productın resmini adını çekmek.
son olarak gösterilecek olan
Order ID Order Edilen Productın Adı Order Edilen Productın Resmi Order Edilen Productın Sayısı Order Date Ödenen Para(product sayısı x fiyatı ile yazarız)