Метод IlluminateDatabaseEloquentCollection::create не существует в Laravel

#laravel

#laravel

Вопрос:

Может кто-нибудь знать, почему существует эта ошибка => Метод IlluminateDatabase Eloquent Collection::create не существует

Кодирование в контроллере :

 public function store(Request $request)
    {

        $data = request()->validate([
            'appointment_date' => 'required',
            'appointment' => 'required',
        ]);


        $appointment = auth()->user()->appointments->create($data);


        return redirect('/appointments/'.$appointment->id);
    }
  

Комментарии:

1.Он говорит об этом прямо в сообщении: коллекция Laravel не имеет create() метода. laravel.com/docs/8.x/collections#available-methods auth()->user()->appointments это коллекция

2. скорее всего, вы имели в виду вызов ...->appointments()->create($data) фактического метода отношений

Ответ №1:

Я думаю, что вы забыли использовать () для -> назначения (), поэтому попробуйте это

 auth()->user()->appointments()->create($data);