سلام
به نظر شما با کمک eloquent لاراول چه طوری می تونیم "بهینه ترین" حالت از نظر تعداد کوئری برای دریافت اطلاعاتی که نوشتم ایجاد کنیم؟
1- یک جدول دسته بندی داریم که حاوی یک سری اطلاعات پایه در مورد هر دسته بندی هست. ( مثلا 10 رکورد )
2- یک جدول محصولات داریم که اطلاعات پایه ای هر محصول درونش ذخیره شدند.
3- به ازای هر دسته بندی یک جدول جداگانه وجود داره که جزئیات اختصاصی هر محصول رو درون خودش نگهداری می کنه. ( با نام های گوناگون )
4- جدول محصولات دو ستون به اسم category_id و item_id داره که اولی شماره آی دی دسته بندی هست و دومی شماره آیتم در جدول جزئیات اختصاصی هر آیتم.
5- اینکه هر جدول جزئیات اختصاصی مربوط به کدوم دسته بندی میشه، چیزی هست که باید کد معرفی کنیم.
حالا می خواهیم پس از دریافت تعدادی از محصولات به کمک مدل به اطلاعات دسته بندی و همین طور جدول جزئیات اختصاصی مربوط به تک تک محصولات دسترسی داشته باشیم.
- راه های گوناگونی برای این موضوع امتحان کردم ولی هنوز شک دارم که بهینه ترین حالت چیه.
- ممنون میشم ایده تون رو با بنده به اشتراک بگذارید.
@sajad.hi
نه بیبنید شما اول attribute های مختلف رو در یک جدول تعریف میکنید و بعد در یک جدول دیگه مقدار و یا مقادیر مربوط به اون attribute رو تعریف می کنید فرض کنید صفت رنگ رو ایجاد کردید(در جدول صفت ها) که مقادیر مختلفی رو می تونه بگیره (جدول مقادیر صفتها) شما حالا با یک رابطه چند به چند می تونید این صفت به همراه مقادیر صفت رو به محصولات و دسته بندیهاتون نسبت بدید. این طوری شما هم انعطاف دارید بزای تعریف صفتهای جدید و به کاربردن این صفت ها برای هر موجودیتی در دیتابیستون
طرح زیر یک نمایی از این نوع پیاده سازی رو نشون می ده
گر به نظر من همین طرح رو پلی مرفیک کنید بسیار عالی و سریع کار خواهد کرد