یکی از راه هاش اینه که شما دو تا مدل متفاوت داشته باشید. یکیش برای مشخصات کلی و عمومی اون محصول مثل عنوان و تصویر شاخص و توضیحات و ...
و یکی هم برای ذخیره انواع مختلف از اون محصول مثل رنگ و نوع گارانتی و قیمت و تعداد موجودی و ... بین این دو تا مدل هم رابطه One To Many برقرار بشه. یعنی هر محصول کلی تعدادی زیادی از اون انواع مختلف داره و هر یک از این انواع مختلف متعلق به یک محصول کلی هستند.
یک چیزی تو این مایه ها:
Products:
- id
-title
- description
- main_image
- ...
و
ProductTypes:
- id
- product_id
- color
- guarantee
- price
- inventory_count
- ...
@mhyeganeh
بله برای ویژگی های خاص که هر محصول متفاوته همین کارو کردم ولی برای این موردی که گفتم که قیمت محصول بر اساس گارانتی تغییر کنه و برای هر رنگ محصول تعداد موجودی مشخص کنیم نمیدونم چیکار کنم
سلام
ببینید ارتباط محصول شما با گرانتی چند به چند هستش پس طببیعتا باید سه تا جدول داشته باشید:
جدول گارانتی ها : 1-شماره منحصر به فرد گارانتی 2-نام گارانتی 3- نام شرکت ارائه دهنده و...
جدول محصولات : 1-شماره منحصر به فرد محصول 2- نام محصول 3- قیمت محصول و...
جدول ارتباطات محصولات با گارانتی ها : 1- شماره منحصر به فرد محصول 2- شماره منحصر به فرد گارانتی 3- قیمت گارانتی
جدولش اینطوری پیاده سازی میشه دیگه فک کنم بفهمین بقیش چه طوریه
@khosravi424
یعنی یه قیمت اولیه برای محصول وارد کنن بعد به ازای هر گارانتی یه مبلغی روی مبلغ اولیه اضافه بشه؟
ببینید هر طور که منظورتون باشه باید 3 تا جدول داشته باشین چون ارتباطتون چند به چند هست و برای گرفتن اطلاعات گارانتی محصول مورد نظر ابتدا باید رجوع کنین به جدول رابطه ها و از اونجا اطلاعات گارانتی رو استخراج کنید
نگا کنید
مثلا:
گارانتی آونگ
گارانتی آوات
گارانتی ویستا
کالاها:
لب تاب asus
لب تاب lenovo
لب تاب msi
خب ببینید تو مثال بالا لب تاب msi داره آوات و آونگ با دو قیمت متفاوت گارانتی میکنه
و همچنین لبتاب lenovo رو هم داره مثلا آوات با قیمت متفاوت از msi گارانتی میکنه
پس میبینید که لب تاب msi داره توسط آوات و آونگ داره گارانتی میشه و همچنین آوات علاوه بر اینکه داره لب تاب lenovo رو گارانتی میکنه با یک قیمت متفاوت داره لب تاب msi رو هم گارانتی میکنه پس ارتباطشون چند به چند هست و طبق قوانین این ارتباط باید سه تا جدول داشته باشین دوتاش که جدول های اصلی هستن و سومی جدول نگه داشتن ارتباطات بین این دو جدول هست
نمیدونم منظورم فهمیدین
@khosravi424
از لحاظ دیتابیس همین کار رو انجام دادم دوست عزیز منظور من تفاوت قیمتی روی هر گارانتیه که چجوری پیاده سازی بشه و بعد تعداد موجودی هر رنگ از کالا
@parham.ftehrani
خب اون فیلد قیمت برای همینه دیگه چون از کالا تا کالا قیمت های گارانتی فرق میکنه.
برا رنگ هم بیاد دقیقا همین داستان رو پیاده سازی کنی فقط به جای فیلد قیمت تو جدول ارتباط بزنی تعداد همین
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟