【发布时间】:2015-10-25 20:31:47
【问题描述】:
我正在努力扩展资源宁静控制器。我有 PostController,我在其中创建了一个特殊的函数 getNext(),它应该返回给我未来的第一个帖子。现在,当我添加路由时它不起作用,除非我添加一些(无用的)路由器参数,或者完全更改 url:
Route::group(['prefix' => '/api'], function() {
Route::resource('post', 'PostController');
Route::get('post/next', 'PostController@getNext');
});
-> GET /api/post/next returns 200 OK with no data whatsoever
// result of 'php artisan route:list | grep next'
GET|HEAD | api/post/next | App\Http\Controllers\PostController@getNext
Route::group(['prefix' => '/api'], function() {
Route::resource('post', 'PostController');
Route::get('post/next/{fakeParam?}', 'PostController@getNext');
});
-> GET /api/post/next returns 200 OK with no data whatsoever
-> GET /api/post/next/YOLO returns the correct data !!!
Route::group(['prefix' => '/api'], function() {
Route::resource('post', 'PostController');
Route::get('omg/next', 'PostController@getNext');
});
-> GET /api/omg/next returns the correct data!
现在我不知道在资源丰富的控制器中添加没有参数的自定义路由有什么问题,但也许你有答案!
【问题讨论】:
-
您是否尝试反转另一个?
标签: php rest laravel laravel-5