راکت

ذخیره داده های اضافی در روابط Many to Many Polymorphic

3 پاسخ

درود وقت بخیر

یک جدول دارم برای ناشران ( که داخلش ناشر های فیلم های سینمایی مثل فیلیمو و ... قرار گرفته )

این جدول ناشران یک رابطه Many to Many Polymorphic با جدول فیلم ها داره

که در جدول رابط آیدی ناشر ، آیدی فیلم و تاریخ انتشار و ... ذخیره میشه

برای ذخیره اطلاعات پایه ( آیدی ناشر و آیدی فیلم ) در جدول میانی مشکلی ندارم

منتهی نمیتونم تاریخ انتشار رو ذخیره کنم

توضیح تصویر رو وارد کنید

کدی که برای ذخیره سازی استفاده می کنم

$movie->publishers()->attach( $request->input('publisher') );

لطفا راهنمایی نمایید

با سپاس فراوان 😃

ثبت پرسش جدید

پاسخ‌ها

3
رضا پارسیان
رضا پارسیان
@Rp76

تخصص: توسعه دهنده Php , Laravel

سلام وقتتون بخیر!

برای ذخیره باید به این روش بری جلو!

البته من اینطوری کار میکنم!

$movie->publishers()->sync([
["filed"=>$movie->publishers()->attach( $request->input('publisher') );],
]);

کد بالا اطلاعات قبلی رو حذف میکنه
پارامتر دوم sync میتونی false پر کنی که اطلاعات بمونه

رضا جهانگیر
رضا جهانگیر
@rezajahangir

تخصص: Full-Stack Developer

سلام.
اطلاعاتی که نیاز دارینو باید داخل جدول واسط ذخیره کنین.
روش ذخیره سازیتون هم درسته و مشکلی نداره.

شاید پاسخ شما همین‌جا باشد

ح غ
ح غ
@ecma262

تخصص: برنامه نویس

طبق راهنمایی جناب آقای علی بیات @ali.bayat در گفتگو "دخیره داده در رابطه many to many" پیش رفتم و حالا مقدار publishtime در جدول رابط ذخیره میشه!

البته با کمی تغییر

        $publishers = $request->input('publisher');

        foreach ($publishers as $publisher) {
            $movie->publishers()->sync( $publishers, [ 'publish_time' => $publisher['publish_time'] ] );
        }

منتهی بعدش خطا میده :|

توضیح تصویر رو وارد کنید

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

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