覆盖未找到的资源控制器方法路由

时间:2017-07-31 10:19:04

标签: php laravel-5.4 laravel-routing

我想声明一个带有两个参数的show的get路由。我有这样的资源控制器:

Route::resource('posts', 'PostsController', ['except' => ['edit', 'delete']]);

如果可能,我不想更改该行,所以我在上面添加了:

Route::get('posts/{id}/{userId}', 'PostsController@show');
Route::resource('posts', 'PostsController', ['except' => ['edit', 'delete']]);

然而我仍然得到:

  

错误:" X / posts / 1/1"路线未找到。

其他测试通过。 我还试图将路线:看到here下方或在例外中添加show。

3 个答案:

答案 0 :(得分:0)

试试这个

Route::get('/posts', 'PostsController@show');

将网址用作

X/posts?id=1&userId=11

答案 1 :(得分:0)

似乎我的代码是正确的,问题出在URi的某个地方,这是正确的:

$this->get('/X/posts/' . $post['id'] . '/'. $post['userId'], $this->headers($this->user))

答案 2 :(得分:0)

更改订单并尝试:

Route::resource('posts', 'PostsController', ['except' => ['edit', 'delete']]);
Route::get('posts/{id}/{userId}', 'PostsController@show');