arazsalmasi
5 سال پیش توسط arazsalmasi مطرح شد
6 پاسخ

ویژگی دسته ها مثل دیوار

سلام دوستان
من دارم سایتی مثل دیوار میسازم
برای انکه هر دسته ویژگی خاصی داشته باشه میدونم که باید یه جدول دیگه بسازم که ویژگی ها رو توش بزارم
برام سواله چطور اون ویژگی ها رو مانند فیلد تکس باکس توی اپ یا سایت نشون بدیم که کاربر بتونه پرشون کنه؟
چطور در کنترلر براشون فانکشن بنویسم چون بالاخره ویژگی ها ثابت نیستن که از جدول میان
ممنون میشم راهنمایی کنید
@mihancivil
@miladboshagh
@SobhanDadkhah


ثبت پرسش جدید
امین محمدزاده
تخصص : برنامه نویسی وب - Laravel
@amin.webdesign 5 سال پیش مطرح شد
0

سلام
مطمئنا توی فروشگاه های اینترنتی قسمت فیلتر محصولات در صفحه دسته بندی ها رو دیدید. هر دسته بندی یه سری فیلتر بندی های مختص نوع محصولات رو داره. مثلا موبایل در قسمت فیلترش مقدار رم و حافظه و ابعاد صفحه نمایش و ... رو انتخاب میکنه و نتیجه بر اساس اون فیلترها نمایش داده میشه
پس شما زمانی که برای یه دسته بندی میایید اون ویژگی هارو تعریف میکنید در جداول رابطه ای، پس میتونید اون ویژگی هارو هم توی صفحه دسته بندی برای فیلتر کردن نمایش بدید و مسئله اصلی اینه که زمانی که شما قراره یه آیتم و محصولی به سیستم اضافه بشه زمانی که دسته بندی مورد نظر انتخاب میشه به راحتی میتونید ویژگی های اون دسته بندی رو به کاربر نشون بدید تا مقادیرش رو پر کنه برای محصولش که اونهارو هم توی یه جدول رابطه ای دیگه ای اضافه میکنید و برای کاربرانی هم که میاند جستجو کنند یه محصولی رو اگه اون فیلتر ها رو انتخاب کردن از بین مقادیری که برای محصولات پر شده فیلتر میکنید. کلیات قضیه اینه. حالا شما باید دیتابیس و کدنویسی این مورد رو تحلیل کنید و هر طور که راحتید پیاده سازی کنید.


سید حسین رضوی
تخصص : برنامه نویس وب و طراح رابط کار...
@hossein.r.1442 5 سال پیش آپدیت شد
0

ببینید همون طور که خودتون فرمودید با بک اند موضوع مشکلی ندارید یعنی اینکه به هر دسته بندی یه سری ویژگی های خاص بدید مشکلی ندارید و فقط توی فرانت موندید چطوری مثلا اگه دسته بندی منزل بود یه چک باس تحت عنوان فروش یا اجاره قرار بدید؟
خوب ساده ترین حالتش اینه که یه شرط بذاری اگه این دسته ویژگی فروش یا اجاره رو داشت این چک باکس رو نمایش بده
مثلا یه همچین چیزی

@if ($category->type == 'home')
    <div class="form-group">
        <label for="switch">فروش</label>
        <input type="checkbox" name="switch" id="switch" class="form-control">
    </div>
@endif

قطعا من توی این کد از رابطه دیتابیس استفاده نکردم فقط خواستم منظورمو برسونم


arazsalmasi
@araz2salmasi 5 سال پیش مطرح شد
0

ممنون ولی در \یاده سازی فرانت این کار موندم
مثلا من چند ویژگی در مورد دسته املاک دارم.
خوب اونا رو میتونم موقع ثبت آگهی برای کاربر نشون بدم ولی نمیدونم چطور input هارو برای اون ویژگی ها نشون بدم که id و ایناشون درست باشه.چطور مثلا موقعی که 10 تا اینپوت داینامیک مقدار میگیرم فانکشن در کنترلر هندلشون کنه
اینارو نمیتونم درست متوجه بشم


سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 5 سال پیش آپدیت شد
0

@araz2salmasi سلام.
اگر درست متوجه شده باشم منظور اینه که شما ده تا ویژگی دارین و میخواین اگر کاربر هرکدوم رو تیک زد برای اون محصول ثبت بشه ؟ یا اینکه بصورت دستی وارد بکنه ؟
روش پیاده سازیش به روابط دیتابیستون ربط داره چون به روش های مختلفی میشه پیاده کرد . اما برای مثال ویژگی بنام " متراژ " : خوب اگر چک باکس هست وقتی نمایشش میدین آیدی اون ویژگی رو هم توی value اینپوتتون سیو میکنید . و توی کنترلر با ریکوئست دریافتش میکنید . مثلا :

@foreach($attributes as $attribute)
    <label>{{ $attribute->name }}</label> --->   size - metrazh - roomNumber 
    <input type="checkbox" name="attributes[]" value="{{ $attribute->id }}">
@endforeach

درواقع اینجا ویژگی هارو از دیتابیس میخونین و نمایش میدین . نکته کلیدی این هست که چون name رو بصورت آرایه گذاشتین اگر چنتا چک باکس ( چندین ویژگی ) هم با همین اسم تیک بخوره بصورت آرایه ایدی هاشون رو میتونید دریافت کنید.
اگر قراره کاربر مقداری رو دستی وارد کنه اینپوت text میذارین و name اینپوت رو بر اساس موردی که میخواین قرار میدین . مثلا :

<input type="text" name="size">

و بعد توی کنترلر دریافتش میکنید .
من خودم یکم شک کردم که درست متوجه نشده باشم منظورتون رو واسه همین یک پیشنهادی دارم :
اینجور موارد رو واسه خودتون روی کاغذ پیاده کنید قشنگ مرحله به مرحله تحلیلش کنید بعد وقتی میخواین واسه ی ما هم توضیح بدین با مثال سوالو مطرح میکنید و خیلی شفاف تره . چه بسا مواردی که با همون تحلیل یهویی توی ذهنتون جرقش بخوره و اصن خود به خود مشکلتونو خودتون حل کنید 😎
من کد ابتدایی واسه ایده دادن قرار دادم . اگر بد متوجه شدم عذر میخوام.🌹


arazsalmasi
@araz2salmasi 5 سال پیش مطرح شد
0

@SobhanDadkhah
خیلی ممنون
این سوال هست هنوز برام که توی جدول ویژگی های من اسم ویژگی و ایدی دسته ذخیره میشه
وقتی من بیام ویژگی ها رو بخونم و انپوت بزارم براشون name اون ها رو چی بزارم که در جدول دیگه که برای مقدار ویژگی هاست چطور دریافتشون کنم در فانکشن و ذخیره کنم؟ یعنی همشون رو چطور میشه گرفت به صورت آرایه یا چی؟
بببخشید واقعا ذهنم هنگ کرده رو این و نمیتونم هندلش کنم


سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 5 سال پیش مطرح شد
0

اینطوری یکم کمک کردن سخت میشه . شما باید سناریویی که میخواین پیاده کنید رو کامل توضیح بدین تا بشه راهنمایی کرد . من واقعا خودم نمیدونم شما دقیقا چیکار میخواین بکنین و اینکه ساختار دیتابیس هم خیلی مهمه واسه این کار . به نظرم سناریو رو از زبان یه فرد عادی بنویسید . یعنی یه جورایی از صفر نیاز هاتونو باید توضیح بدین که هم من هم دوستان بتونیم کمک کنیم . (یعنی باید فرض کنید که شما کارفرما هستین و بدون دانش برنامه نویسی میخواین امکانات سایتتون رو واسه یه برنامه نویس شرح بدین )
یا همینجا یا سوال جدیدی بسازید و سناریو رو کامل توضیح بدین . مثلا من میتونم بیام ویژگی های روتین مثل دیجی کالا مثل دیوار توضیح بدم ولی خوب شاید با چیزی که شما میخواین متفاوت باشه .

بببخشید واقعا ذهنم هنگ کرده رو این و نمیتونم هندلش کنم

مشکل شمارو قبلا خودم داشتم واسه همین میگم سناریو رو توضیح بدین تا کامل بتونیم راهنمایی کنیم و تو ذهنتون جا بگیره 🌹


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

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