我有一个包含两个表的数据库:table CATEGORIES的id是表PRODUCTS的fk。 当我想删除一个类别,并且表产品中的记录已关联该类别ID时,laravel返回405错误,我无法访问destroy方法。如何避免405错误并访问destroy方法?
这是我的路线配置:
$api = app('Dingo\Api\Routing\Router');
$api->version('v1',['middleware' => ['api']], function($api){
$api->resource('categories', 'App\Http\Controllers\CategoriesController');
$api->resource('products', 'App\Http\Controllers\ProductsController');
$api->get('categories/{id}/products', 'App\Http\Controllers\CategoriesController@products');
});
修改
如果类别与任何产品没有关联,delete方法不会抛出任何错误,所以我猜这不是路由问题
答案 0 :(得分:1)
如果存在路由,则Laravel仅返回HTTP 405,但不会返回该方法。我并不完全熟悉Dingo,但运行php artisan route:list
检查您尝试使用的路由是否已注册DELETE请求。