Удалить слайд совы с помощью laravel, vue.js и axios - PullRequest
0 голосов
/ 19 сентября 2018

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

Я начал с контроллера

public function destroy(Request $request, Slide $slide)
{
    $slide = Slide::where('id', $request->id);
    $slide->delete();

    return response()->json($slide, 200);
}

У меня есть группы маршрутов Отредактировано

    Route::group(['prefix' => '/{area}'], function () {
        Route::group(['middleware' => ['auth']], function () {
            Route::post('/{hustle}', 'Slides\SlideController@save')->name('slide.save');
            Route::delete('/{hustle}/slider/{slide}', 'Slides\SlideController@destroy')->name('slide.destroy');
        });
Route::get('/{hustle}/slider', 'Hustle\SliderController@index');
    });

Сама кнопка выглядит примерно так

 <button @click="deleteSlide">Delete</button> {{ slider.uid }}

и, наконец, метод

Отредактировано

methods: {
  getSlider () {
    var that = this;
    axios.get( '/' + this.areaId + '/' + this.hustleId + '/slider').then((response) => {
      that.sliders = response.data;
      console.log(that.sliders);
      Vue.nextTick(function() {

        $('#sliders').owlCarousel({
          items:1,
        });

      });
    })
    .catch(error => {
      console.log(error)
      this.errored = true
    });
  },

  deleteSlide (slider) {
    var that = this;
    axios.delete('/' + this.areaId + '/' + this.hustleId + '/slider/' + this.sliderId).then((response) => {
      that.slider.splice(slider, 1)
      console.log(that.sliderId);
    });

  }
},

Все, что я получаю за ошибку, - это 500 некорректных вызовов метода, даже с панелью отладки.также дает неверный вызов метода.

1 Ответ

0 голосов
/ 20 сентября 2018

Мне не хватает представителя, чтобы комментировать, но ...

На первый взгляд ваш маршрут принимает два параметра: hustle и slide.
И вы передаете 4 параметра axios: area, hustle, sliderстрока и идентификатор

Так что это совершенно другой маршрут:)

...