راکت

رابطه belongsTo - hasMany

1 پاسخ

سلام وقت بخیر دوستان یک مشکلی خوردم هرچی سرچ کردم به جوابی نرسیدم منون میشم راهنمایی کنید
یک رابطه یک به چند درام که با متدد createMany ذخیره کرده ام و برای آپدیت به مشکل خورده ام

foreach ($languages as $lang_code => $lang_title) {
                if ($this->checkTranslation($lang_code, $params)) {
                    $translation[] = [
                        'lang' => $lang_code,
                        'title' => $params['title_' . $lang_code],
                        'short_description' => $params['short_description_' . $lang_code],
                        'description' => $params['description_' . $lang_code],
                        'meta_title' => $params['meta_title_' . $lang_code],
                        'meta_description' => $params['meta_description_' . $lang_code]
                    ];
                }
            }
            $newBlog->blogTranslation()->createMany($translation);

برای ویرایش به این شکل پیش رفتم

foreach ($languages as $lang_code => $lang_title) {
            $translation[] = new Blog_traslation([
                'user_id' => $id,
                'lang' => $lang_code,
                'title' => $params['title_' . $lang_code],
                'short_description' => $params['short_description_' . $lang_code],
                'description' => $params['description_' . $lang_code],
                'meta_title' => $params['meta_title_' . $lang_code],
                'meta_description' => $params['meta_description_' . $lang_code]
            ]);
        }
        $blog->blogTranslation()->saveMany($translation);

SQLSTATE[۲۳۰۰۰]: Integrity constraint violation: ۱۰۴۸ Column 'blog_id' cannot be null

ثبت پرسش جدید

پاسخ‌ها

1
وحید
وحید
@forughi.vahid

تخصص: Fullstack

@karimiam93
برای رابطه یک به چند باید از متد save() یا associate() استفاده کنید.

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

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

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