Laravel 5 Route :: DELETE用于从联接表

时间:2016-07-08 09:41:32

标签: laravel laravel-5

我在我的REST API应用程序中使用Laravel 5.2。我需要知道,保持Route规则从连接表中删除数据的正确方法是什么。目前我正在这样做:

Route::group(['prefix' => 'api/v1'], function(){
    ...
    Route::delete('/customers/{customerid}', 'CustomerController@destroy');
    ...
    Route::delete('/customers/{customerid}/notes', 'CustomerController@removeCustomerNote');
    ...
}

但是,如果我这样做,请删除与'客户'删除冲突的'注意'。

  

路由::删除('/ customers / notes / {customerid}','CustomerController @ destroy');

1 个答案:

答案 0 :(得分:2)

路线从上到下匹配 - 所以如果您需要最高优先级,请切换订单

Route::group(['prefix' => 'api/v1'], function(){
  ...
  Route::delete('/customers/{customerid}/notes', 'CustomerController@removeCustomerNote');
  ...
  Route::delete('/customers/{customerid}', 'CustomerController@destroy');
  ...
}

要删除连接表,您可以执行嵌套资源:

Route::delete('/customers/{customerid}/notes/{noteId}', 'CustomerController@removeCustomerNote');