Как я могу решить ошибку 422 в запросе POST, используя Laravel, в компоненте Vue? - PullRequest
0 голосов
/ 08 ноября 2019

Я получаю эту ошибку: POST {url} 422 (Unprocessable Entity) при попытке загрузить данные в мое веб-приложение. Я использую Laravel и Vue.js.

Это приложение очень простое, и я снова работаю над ним после 1 месяца бездействия. Я сделал это с нуля, и странным было то, что я оставил его работающим идеально, но теперь, когда я делаю тестирование снова, эта ошибка вырывается из ниоткуда.

Это мой метод, который хранит данные в моем компоненте Vue:

 methods: {
      getImage: function(e){
        let file = e.target.files[0];
        this.avatar = file;
      },
      saveTrainer: function(){
        let currentRoute = window.location.pathname;

        axios.post(`http://127.0.0.1:8000${currentRoute}`, {
          name: this.name,
          slug: this.slug,
          description: this.description,
          avatar: this.avatar
        })
        .then(function(res){ //res = response
          console.log(res)
          $('#addTrainer').modal('hide')
          EventBus.$emit('trainer-added', res.data.trainer)
        })
        .catch(function(err){
          console.log(err)
        });
      }
    }

И функция в моем контроллере:

 public function store(StoreTrainerRequest $request)
    {
        if($request->ajax()){
            $trainer = new Trainer();
            if($request->hasFile('avatar')){
                $file = $request->file('avatar');
                $name = time().$file->getClientOriginalName();
                $file->move(public_path().'/images/', $name);
            }

            $trainer->name = $request->input('name');
            $trainer->description = $request->input('description');
            $trainer->avatar = $name;
            $trainer->slug = $request->input('slug');
            $trainer->save();
            return redirect()->route('trainers.index');
        }
    }

Это то, что я вижу в моем браузере и это ответ, который я получаю

Также это содержимое StoreTrainerRequest

Спасибо за помощь.

РЕДАКТИРОВАТЬ: я уже использую FormData (), ноэто ничего не меняет. Это очень странная вещь, потому что, как я уже сказал, когда я работал над этим приложением 1 месяц назад, все было в порядке

...