مهرداد
3 سال پیش توسط مهرداد مطرح شد
1 پاسخ

اپدیت کردن ویژگی های محصول در لاراول

سلام دوستان من برای ویژگی های محصولم سه تا بخش به اسم
attribute
value
unit
دارم که یونیت همون واحد اندازه گیری هست روند کار به این صورته که من توس صفحه کریت محصول با استفاده از جاوا اسکریپت سه تا اینپوت رو برای سه بخش ذکر شده ایجاد میکنم و تو همون فرم کریت ویژگی و مقادیر محصول رو وارد میکنم الان من با استفاده از کد زیر بخش store رو نوشتم و اوکیه

foreach ($request->input('attributes') as $key => $attribute) {

            $attributeItem = Attribute::create([
                'name' => $attribute,
                'unit' => $request->input('units')[$key]
            ]);
            $product->attributes()->attach($attributeItem->id);

            $attributeValue = AttributeValue::create([
                'name' => $request->input('values')[$key],
                'attribute_id' => $attributeItem->id,
            ]);

            $product->values()->attach($attributeValue->id);
        }

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

        Schema::create('attributes', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->string('unit');
            $table->timestamps();
            $table->softDeletes();
        });

        Schema::create('attribute_product', function (Blueprint $table) {

            $table->foreignId('attribute_id')->constrained('attributes')
            ->onDelete('cascade')
            ->onUpdate('cascade');

            $table->foreignId('product_id')->constrained('products')
            ->onDelete('cascade')
            ->onUpdate('cascade');
        });
        Schema::create('attribute_values', function (Blueprint $table) {
            $table->id();
            $table->string('name');
            $table->foreignId('attribute_id')->constrained('attributes')
                ->onDelete('cascade')
                ->onUpdate('cascade');
            $table->timestamps();
            $table->softDeletes();
        });
        Schema::create('attribute_value_product', function (Blueprint $table) {
            $table->foreignId('attribute_value_id')->constrained('attribute_values')
                ->onDelete('cascade')
                ->onUpdate('cascade');

            $table->foreignId('product_id')->constrained('products')
                ->onDelete('cascade')
                ->onUpdate('cascade');
        });

@mhyeganeh
@gomnam
@hekmati
@endworld
@mimsadAlef
@mobinasattari7


ثبت پرسش جدید
مهرداد
@mehrdadroshanraee69 3 سال پیش مطرح شد
0

دوستان کسی راه حلی نداره ؟


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

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