یلدا ادامه داره... ❤️ ۴۰ درصد تخفیف همه دورهها
استفاده از تخفیفهاسلام دوستان وقتتون بخر . من یک جدول دسته بندی ها دارم . و یک جدول محصولات . محصولات رابطه یک به چند دارن با محصولات یعنی هر محصول میتونه جزو یک یا چندین دسته بندی باشه . حالا وقتی کاربر وارد صفحه نمایش یک کالا میشه من اطلاعات کالا رو نشون میدم ومیخوام پایین اون صفحه محصولات مرتبط رو نشون بدم. سناریو من برای نشون دادن محصولات مرتبط اینه که : هر دسته بندی یک رابطه چند به چند با خودش داره . این جدول رابط برای همون نشنون دادن محصولات مرتبط است . به فرض مثال من یک محصول دارم که توی دسته بندی 1 و 8 است . حالا توی جدول چند به چند دسته بندی ها با خودشون این روابط رو دارم که 1 به 9 ارتباط داده شده و 8 هم به 5 . حالا این یعنی اگه دسته محصول 1 بود برو محصولاتی که توی دسته بندی 9 هستن رو نشون بده. اگه دسته بندی 8 بود برو از محصولاتی که توی دسته بندی 5 هستن رو بیار . من میتونم ببینم که یک محصول جزو کدوم دسته ها است. حالا از شما دوستان عزیز راهنمایی میخوام تا بتونم از طریق دسته بندی های یک محصول برم توی اون جدول رابط بگردم و از طریق اونا توی محصولات جستجو کنم و 10 محصول رو نشون بدم.
$categories = $product->categories
foreach($categories as $category)
{
$category->children
}
حالا لطفا کمک کنید 🙏
هر محصول میتونه جزو یک یا چندین دسته بندی باشه
این یک رابطه چند به چند هست .. نه یک به چند..
پس قبل از هر چیز یه pivot table هم لازم داری
متوجه ما باقی سوال نشدم، اگر کدی نوشتی و خروجی یا اروری داری، به اشتراک بگذار
@ali.bayat
درسته من اون جدول pivot رو دارم .
حالا فکرکنید من فقط محصول رو دارم میشه بقیش رو به صورت کد بگید چون متوجه میشم . اسم ریلشن هاشم هم هرچی گزاشتید فرقی نداره . اگه لطف کنید ممنون میشم🙏.
من محصول رو دارم میتونم اینجوری دسته بندی هاش رو بگیرم
$product->categories
حالا چجوری این دسته رو توی اون جدول pivot سرچ کنم ؟
جدول Pivot شما حاوی id محصول و دسته بندی هست
با یه رلیشن Many to Many نیازی نیست شما دسته رو سرچ کنید.. کافیه به رابطه many to many اشاره کنید
..
Class Category extends Model {
public function products() {
return $this->belongsToMany(Product::class, 'pivot_table');
}
}
و
Class Product extends Model {
public function categories() {
return $this->belongsToMany(Category::class, 'pivot_table');
}
}
حالا اگر یه دسته بندی رو داشته باشی، از این رلیشن استفاده میکنی و محصولاتش رو میگیری و بعد میتونی ۱۰ تای آخر رو بگیری
$category = \App\Category::first();
$lastProducts = $category->products()->take(10)->get();
به عکسش هم دسترسی داری
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟