ایجاد جدول محصولات و تصاویر
سلام.
یک جدول products دارم که هر محصولی میتونه چند تصویر داشته باشه .
یک جدول جدا برای تصاویر ایجاد کردم که رابطه hasmany برقراره .
موقع ایجاد یک محصول ، همزمان تصاویرش هم در جدول درج میشه ( از جی کوئری در کد html استفاده کردم که میشه بصورت داینامیک تصویر جدید اپلود کرد ).
این کد درج همزمان هست . نتیجه میده اما تو لاراول روش بهتری هست یا باید حتما از حلقه استفاده کرد ؟
$product = Product::create($inputs);
foreach($request->file('filename') as $image) {
$images = new Image;
$images->path = $image->getClientOriginalName();
$product->images()->save($images);
}
--------------------------------------------------------------
قسمت دوم سوال :
اینکه تصاویر رو بصورت ارایه در یک فیلد از products ذخیره کنم بهتره یا اینکه یک جدول جدا برای تصاویر اینجاد کنم و رابطه hasmany برقرار بشه ؟
البته ذخیره بصورت ارایه و واکشی تصاویر دردسرش بیشتره . اما کدوم راه بهینه تره ؟
---------------------------------------------
نقل قول: ایجاد جدول محصولات و تصاویر
1 - نمیدونم روش بهتر از چه نظر میگید روش بهتر ولی میتونی یکدفعه همه عکس ها رو بریزی تو دیتبایس , البته بازم نیازه قبلش یک حلقه داشته باشی که همه عکس ها رو بریزه توی یک آرایه مناسب بعد آرایه رو بریزی تو دیتبایس
https://stackoverflow.com/questions/...g-eloquent-orm
2 - ریختن چندین مورد توی یک فیلد هیچوقت راه حل مناسبی نیست ... جدول جدا بزار
نقل قول: ایجاد جدول محصولات و تصاویر
ممنونم .
در مورد ارتباط جدول محصولات و دسته بندی هم سوال داشتم .
جدول دسته بندی من به این شکل هست :
هر دسته ، زیر دسته هایی درخودش داره که با parent_id مشخص شده .
در مورد منطق کار :
یک : اگر دسته اصلی حذف بشه ، باید زیر دسته ها هم حذف بشن ؟ بهتره این با کدنویسی انجام بشه یا اینکه ارتباط cascade بصورت internal درون خود جدول دسته بندی اینجاد کنم ؟
دوم : هر دسته متعلق به یک محصولی هست . ( هر محصول فقط یک دسته داره ) اگر دسته ای حذف بشه ، محصولی که قبلا category_id اون دسته رو داشته ، بهتره فیلدش null بشه ؟
سوم : بطور کلی اجازه ی حذف دسته داده بشه یا اینکه از فیلدی مثل status برای فعال یا عدم فعال بودن دسته استفاده کنم ؟
بهترین روال و منطق کار چیه ؟
-------------------
پ . ن : به این خاطر اینجا سوالو مطرح کردم که مربوط به ارتباط های جداول در لاراول هست و ممکنه مشکل کدنویسی لاراول هم داشته باشم .
با تشکر
نقل قول: ایجاد جدول محصولات و تصاویر
1 - زیر دسته ها یا باید حذف بشن , اگه بتونی cascade کنی که بهتره
2 - نال بشه یا به دسته دیگه منتقل بشن
3 - میتونی از softdelete استفاده کنی اگه نمیخای حذف فیزیکی کنی
نقل قول: ایجاد جدول محصولات و تصاویر