parhamft
4 سال پیش توسط parhamft مطرح شد
9 پاسخ

ویژگی رنگ و تعداد و گارنتی و قیمت متفاوت

سلام دوستان
برای یک محصول چجوری میشه مشخص کرد که از رنگ مثلا مشکی 5 عدد از رنگ آبی 10 عدد و... موجود هست ؟
و اینکه برای گارانتی های متفاوت قیمت نهایی محصول متفاوت باشه؟


ثبت پرسش جدید
محمدحسن یگانه
تخصص : Full-Stack Web Developer Freel...
@mhyeganeh 4 سال پیش مطرح شد
0

یکی از راه هاش اینه که شما دو تا مدل متفاوت داشته باشید. یکیش برای مشخصات کلی و عمومی اون محصول مثل عنوان و تصویر شاخص و توضیحات و ...
و یکی هم برای ذخیره انواع مختلف از اون محصول مثل رنگ و نوع گارانتی و قیمت و تعداد موجودی و ... بین این دو تا مدل هم رابطه One To Many برقرار بشه. یعنی هر محصول کلی تعدادی زیادی از اون انواع مختلف داره و هر یک از این انواع مختلف متعلق به یک محصول کلی هستند.

یک چیزی تو این مایه ها:

Products:
- id
-title
- description
- main_image
- ...

و

ProductTypes:
- id
- product_id
- color
- guarantee
- price
- inventory_count
- ...

parhamft
تخصص : برنامه نویس لاراول
@parham.ftehrani 4 سال پیش مطرح شد
0

@mhyeganeh
بله برای ویژگی های خاص که هر محصول متفاوته همین کارو کردم ولی برای این موردی که گفتم که قیمت محصول بر اساس گارانتی تغییر کنه و برای هر رنگ محصول تعداد موجودی مشخص کنیم نمیدونم چیکار کنم


سهیل حیدری
@hbr 4 سال پیش مطرح شد
0

سلام
ببینید ارتباط محصول شما با گرانتی چند به چند هستش پس طببیعتا باید سه تا جدول داشته باشید:
جدول گارانتی ها : 1-شماره منحصر به فرد گارانتی 2-نام گارانتی 3- نام شرکت ارائه دهنده و...
جدول محصولات : 1-شماره منحصر به فرد محصول 2- نام محصول 3- قیمت محصول و...
جدول ارتباطات محصولات با گارانتی ها : 1- شماره منحصر به فرد محصول 2- شماره منحصر به فرد گارانتی 3- قیمت گارانتی

جدولش اینطوری پیاده سازی میشه دیگه فک کنم بفهمین بقیش چه طوریه


parhamft
تخصص : برنامه نویس لاراول
@parham.ftehrani 4 سال پیش مطرح شد
0

@khosravi424
یعنی یه قیمت اولیه برای محصول وارد کنن بعد به ازای هر گارانتی یه مبلغی روی مبلغ اولیه اضافه بشه؟


سهیل حیدری
@hbr 4 سال پیش مطرح شد
0

ببینید هر طور که منظورتون باشه باید 3 تا جدول داشته باشین چون ارتباطتون چند به چند هست و برای گرفتن اطلاعات گارانتی محصول مورد نظر ابتدا باید رجوع کنین به جدول رابطه ها و از اونجا اطلاعات گارانتی رو استخراج کنید
نگا کنید
مثلا:
گارانتی آونگ
گارانتی آوات
گارانتی ویستا
کالاها:
لب تاب asus
لب تاب lenovo
لب تاب msi
خب ببینید تو مثال بالا لب تاب msi داره آوات و آونگ با دو قیمت متفاوت گارانتی میکنه
و همچنین لبتاب lenovo رو هم داره مثلا آوات با قیمت متفاوت از msi گارانتی میکنه
پس میبینید که لب تاب msi داره توسط آوات و آونگ داره گارانتی میشه و همچنین آوات علاوه بر اینکه داره لب تاب lenovo رو گارانتی میکنه با یک قیمت متفاوت داره لب تاب msi رو هم گارانتی میکنه پس ارتباطشون چند به چند هست و طبق قوانین این ارتباط باید سه تا جدول داشته باشین دوتاش که جدول های اصلی هستن و سومی جدول نگه داشتن ارتباطات بین این دو جدول هست
نمیدونم منظورم فهمیدین


parhamft
تخصص : برنامه نویس لاراول
@parham.ftehrani 4 سال پیش مطرح شد
0

@khosravi424
از لحاظ دیتابیس همین کار رو انجام دادم دوست عزیز منظور من تفاوت قیمتی روی هر گارانتیه که چجوری پیاده سازی بشه و بعد تعداد موجودی هر رنگ از کالا


سهیل حیدری
@hbr 4 سال پیش مطرح شد
0

@parham.ftehrani
خب اون فیلد قیمت برای همینه دیگه چون از کالا تا کالا قیمت های گارانتی فرق میکنه.


سهیل حیدری
@hbr 4 سال پیش مطرح شد
0

برا رنگ هم بیاد دقیقا همین داستان رو پیاده سازی کنی فقط به جای فیلد قیمت تو جدول ارتباط بزنی تعداد همین


parhamft
تخصص : برنامه نویس لاراول
@parham.ftehrani 4 سال پیش مطرح شد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام