首页 > 解决方案 > Laravel - 找不到您要查找的页面

问题描述

当我点击链接时,我得到了 404 页

我不知道哪一部分错了,有人可以帮助我吗?

侧导航

<a href="{{ route('posts.indexRequest') }}">Request List</a>

路线

Route::prefix('dashboard')->middleware('role:superadministrator|administrator|editor|author|contributor')->group( function () {
  Route::get('/', 'PagesController@dashboard')->name('dashboard');
  Route::resource('/posts', 'PostController');
  Route::get('/posts/request-list', 'PostController@indexRequest')->name('posts.indexRequest');
});

后控制器

public function indexRequest()
{
  $posts = Post::where('status', 'On Request')->orderBy('created_at')->paginate(12);

  return view('manages.posts.request', compact('posts'));
}

我有看法

文件夹结构

标签: phplaravelhttp-status-code-404

解决方案


如果资源路由使用相同的前缀,则不能在资源路由之后设置获取路由。

资源路由将定义posts/{post}PostController@show路由,相当于:

Route::get('posts/{post}', 'PostController@show')

这将与您的底部路线冲突,posts/request-list并将评估request-list为上述路线中的帖子 ID ({post})。

在资源路由之前设置所有特定路由。


推荐阅读