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()

0 ответов

Другие вопросы по тегам