سلام دوستان برای ساختار دیتابیس بخش ویژگی های هر محصول کدوم یکی از این ساختار منطقی تر البته من هنوز محوصلات رو ایجاد نکردم ولی بزودی ایجاد میکنیم فعلا بخش ویژگی هاشو میخام اوکی کنم ممنون میشم راهنماییم کنید
@ali.bayat
@hosseinshirinegad98
@mhyeganeh
@mohammadeng3731
ساختار اول
public function up()
{
Schema::create('attributes', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->integer('order')->nullable();
$table->timestamps();
});
Schema::create('values', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger('attribute_id');
$table->string('values');
$table->foreign('attribute_id')->references('id')->on('attributes')->onDelete('CASCADE');
$table->timestamps();
});
}
ساختار دوم
public function up()
{Schema::create('attribute_groups', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->integer('order')->nullable();
$table->timestamps();
});
Schema::create('attributes', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger('attibute_group_id');
$table->string('name');
$table->integer('order')->nullable();
$table->timestamps();
});
Schema::create('attributes_items', function (Blueprint $table) {
$table->id();
$table->unsignedBigInteger('attribute_id');
$table->string('name');
$table->timestamps();
});
}
اگر دوستان ساختار مناسب تری هم دارن ممنون میشم ارائه بدند
@mehrdadroshanraee68
هیچ کدام جالب به نظر نمیرسه
شما اگر بخواهید برنامتون توسعه پذیر و ادمین پسند باشه، باید از ساختار بهتری استفاده کنبد
ساختار های مختلفی هست
ساده ترینش استفاده از مدل schemaless attributes هست، که در کنار انعطاف یه سری محدودیت هم داره.
ساختار های جدولی محدودیت کمتری دارند اما به روابط دقیق تری هم نیاز دارند.
باید دید نیاز این اپلیکیشن به تعریف Attribute در چه حدی هست
@wozniak
@ali.bayat
میشه بفرمایید چه ساختاری مناسبه و منعطف تر اگه بهم بگید ممنون میشم کم تجربه ام و تجربه های شما میتونه خیلی بهم کمک کنه
@mehrdadroshanraee68
اقای بیات درست می فرمایند.
بسته به سایز و نیاز پروژه شما این ساختار میتونه متفاوت باشه.
مثلا شما در نظر بگیرید مدیریت ویژگی محصولات در وبسایت دیجیکالا که قابلیت ایجاد محصول جدید توسط فروشندگان امکان پذیر هست ، نیاز هست ساختار متفاوتی با یک وبسایت ساده فروشگاهی پیاده بشه. در وبسایت ساده همین الگوی خود شما کارامده احتمالا. یعنی شما یه جدول مرتبط داشته باشید که تو اون attributes لینک بشه. اما یه قدم بریم جلوتر : اگر شما بخواهید در attribute ها سرچ داشته باشید چه؟ و یا اگر شما فروشندگان دیگر داشته باشید و بخواهید امکان ایجاد ویژگی به آن ها بدید چه ؟
پس شما اول تعیین کنید در چه سطحی عمل می کنید تا اگر تونستیم با هم حل کنیم
@wozniak
قطعا هرکسی دوستداره راه حل های پیشرفته و امکانات پیشرفته رو برای سایتش پیاده سازی کنه مثلا مورد دوم شما فرمودید بیشتر برام جالب اومد و اگه بتونید بهم بگید چجوری میتونم پیادش کنم عالی میشه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟