如何让我的资源控制器触发destroy _method?

时间:2015-07-07 02:21:36

标签: php laravel-5

我遇到了laravel5资源控制器的问题。 POST方法工作正常但删除方法不正常。正如你从邮递员那里看到的,我正在将DELETE _method传递给正确的路线

postman screen capture 与此同时,我使用的是直接路线也很好。

Route::delete('customisemymeal', ['as'=>'customisemymeal', 'uses'=>'UserMealCustomController@destroy']);
Route::post('customisemymeal', ['as'=>'customisemymeal', 'uses'=>'UserMealCustomController@store']);

我已经禁用了CSRF令牌检查,直到它被整理出来。

route::delete相比,您能否帮助解释为什么资源控制器的方法不同?

路线:列表

  | DELETE                         | customisemymeal/{customisemymeal}                                       | customisemymeal.destroy            | App\Http\Controllers\UserMealCustomController@destroy         |

     | DELETE                         | customisemymeal                                       | customisemymeal           | App\Http\Controllers\UserMealCustomController@destroy         |

1 个答案:

答案 0 :(得分:1)

使用路线:

Route::resource('customisemymeal', ['as'=>'customisemymeal', 'uses'=>'UserMealCustomController']);

你必须遵守一些规则。要删除您需要使用的内容:

domain.com/customisemymeal/resource_id

在屏幕截图中,您尝试使用不同的URI删除资源。

domain.com/customisemymeal

那不行。

规则是:

Index:
GET -> domain.com/resource

Show:
GET -> domain.com/resource/resource_id

create:
GET -> domain.com/resource/create

edit:
GET -> domain.com/resource/resource_id/edit

update:
PATCH / UPDATE -> domain.com/resource/resource_id

store:
POST -> domain.com/resource

delete:
DELETE -> domain.com/resource/resource_id