Laravel Create and Update one to many полиморфный
У меня полиморфные отношения один ко многим
Модель пользователя
public function phones()
{
return $this->morphMany(Phone::class, 'phoneable');
}
Модель телефона
public function phoneable()
{
return $this->morphTo();
}
когда я создаю телефоны для пользователя (работает)
$user = User::find(1)->get();
foreach ($request->phone_number as $phone) {
if ($phone != null) {
$user->phones()->create(['phone_number' => $phone]);
}
}
Теперь у меня два вопроса
1- есть ли элегантный способ создавать телефоны вместо моего кода?
2- как я могу обновить телефоны пользователей? Я старался
$user->phones()->sync($request->phone_number);
но это дает мне ошибку
Вызов неопределенного метода Illuminate\Database\Eloquent\Relations\MorphMany::sync()