Предположим, что в базе данных имеется 2 таблицы: user, appUser (пользователь имеет один appUser и отношение). Имея идентификатор пользователя, чтобы обновлять данные appUser, мы можем использовать следующий код (если нет appUser относительной модели):Eloquent: отношение к модели доступа или создать новое
$user = user::find($userID);
if(count($user->appUser) == 0){
$appUser = new appUser();
$appUser->column = $value;
$user->appUser->save();
} else {
$appUser = $user->appUser;
$appUser->column = $value;
}
$user->appUser()->save($appUser);
Выглядит хорошо, но что, если я быть_наст другой контакт таблица (appUser имеет один контакт), поэтому для обновления контактов, мы должны добавить еще сослагательное наклонение и ELSES, чтобы убедиться, что appUser и существуют контактные отношения. Мой вопрос в том, что есть какой-то краткий путь к загрузить отношение и создать новое, если не существует в laravel eloquent?
В этом случае было бы как:
$user = user::find($userID);
// No Exception!
$user->appUser->column = $value;
$user->appUser->save();