Laravel сохранить или обновить отношения многие ко многим с помощью дополнительного столбца

У меня есть отношения многие ко многим в laravel, где я хочу сохранить пользовательские настройки. Настройка может быть установлена ​​от многих пользователей, и пользователь может иметь много настроек.

У меня есть дополнительное поле с именем «значение» в сводной таблице, где я хочу сохранить значение, установленное пользователем.

Ну, я хочу создать новую запись, когда нет значения для конкретного пользователя и настроек. Но если значение уже есть, оно должно быть обновлено.

Вот что я попробовал:

$setting = Setting::find(1);
Auth::user()->settings()->save($setting,array('value' => 15));

Как только я меняю значение на что-то другое, оно автоматически создает новую запись. Но я бы хотел, чтобы оно было обновлено. Как мне этого добиться?

0

Решение

Используйте метод UpdateOrCreate.

$setting = Setting::find(1);
Auth::user()->settings()->updateOrCreate($setting,array('value' => 15));

Методика Документация

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]