2017-03-06 118 views
2

我正在使用Laravel的揹包使用管理面板。當我想通過點擊刪除按鈕刪除某個項目時,我得到一個未刪除錯誤 - 請參閱截圖。Laravel 5.4揹包無法刪除項目,返回「403 Forbidden」錯誤

enter image description here

enter image description here

它看起來像403和405錯誤當使用CRUD::resource()Route::resource方法可能發生,但服務器(Apache的在我的情況),不允許他們在動態資源 - 無論這意味着詳細...

有沒有辦法在Apache上啓用這些方法?

我得到它的工作,但我想使用默認的HTTP方法。

快速修復

我能夠通過複製和修改揹包的list.blade.php CRUD視圖來解決這個問題。

  1. 複製視圖vendor/backpack/crud/src/resources/views/list.blade.php並將其移動到resources/views/vendor/backpack/crud/list.blade.php

  2. 修改就行定義的AJAX請求271

    if (confirm("{{ trans('backpack::crud.delete_confirm') }}") == true) { 
         $.ajax({ 
          url: delete_url, 
          type: 'POST', // change from DELETE to POST 
          data: { // "spoof" the HTTP verb "DELETE" 
          "_method": "DELETE" 
          }, 
    

回答

-1

你應該檢查在您訪問控制器

$this->crud->allowAccess(['delete']); 

我覺得你沒必要這麼複雜。 當您安裝的揹包,你shoudld運行像

php artisan vendor:publish --provider="Backpack\Base\BaseServiceProvider" #publishes configs, langs, views and AdminLTE files 

它會自動將文件複製到正確的地方