Создайте или обновите для 2 моделей с отношением Laravel - PullRequest
0 голосов
/ 03 апреля 2020

У меня есть две модели (Люди / Регистрация) и способ создания или обновления в обеих таблицах, но это не красиво и на моем живом сервере, обновление после 14k записей начинает ломаться, и я получаю эту ошибку. Я не скопировал весь код, потому что у меня много столбцов, это всего лишь контроллер. PS. для доступа к отношениям у меня есть $people->register and $register->people

Нет результатов запроса для модели [Приложение \ Персона] 15798

    //$personId->id is the ID for registers migration, I also use this to find if is Create or Update 

    // Here I store values in registers migration
    $register = new Register();
    if (!$personId) {
        $register->fill([
            'volume' => $request->volume,
            'page' => $request->page,
            //and many more ...
        ])->save();
    } else {
        $register->where('id', $personId->id)->update([
            'volume' => $request->volume,
            'page' => $request->page,
            //and many more ...
        ]);
    }

    // Here I store values in people migration
    //in people migration I have a FK (register_id), to make the relationship
    $person = new Person();
    if (!$personId) {
        $person->fill([
            'name_as_written' => $request->name_as_written,
            'fore_name' => $request->fore_name,
            'surname_name' => $request->surname_name,
            //and many more ...
        ]);

        $person->register()->associate($register)->save();
    } else {
        //$request->personId is ID of people's migration
        $person->where('id', $request->personId)->update([
            'name_as_written' => $request->name_as_written,
            'fore_name' => $request->fore_name,
            'surname_name' => $request->surname_name,
            //and many more ...
        ]);
    }
...