Laravel 如何除'/诺瓦';如果我有';任何';与任何请求匹配的路由

Laravel 如何除'/诺瓦';如果我有';任何';与任何请求匹配的路由,laravel,laravel-nova,Laravel,Laravel Nova,我将在拉威尔诺瓦的基础上制作自己的CMS。现在我正在制作一个“页面”功能。我将把我的页面作为包含url列的表pages的行。在我的routes/web.php文件的末尾,我有与任何路由匹配的路由: Route::get( .... ); Route::post( .... ); Route::get('/{page}', 'PageController@myRouter')->where('page', '[A-Za-z0-9_\-\/]+'); 在myRoute方法中,我将捕获一个ur

我将在拉威尔诺瓦的基础上制作自己的CMS。现在我正在制作一个“页面”功能。我将把我的页面作为包含
url
列的表
pages
的行。在我的
routes/web.php
文件的末尾,我有与任何路由匹配的路由:

Route::get( .... );
Route::post( .... );
Route::get('/{page}', 'PageController@myRouter')->where('page', '[A-Za-z0-9_\-\/]+');
myRoute
方法中,我将捕获一个url,并尝试在数据库中找到具有此url的页面;一切正常,但当我在“获取管理”面板中键入
/nova
时,我得到了404。因为,nova的路线在任何请求中都比我的路线晚。那么,如何修复它呢?我该怎么说呢

Route::get('/{page}', 'PageController@myRouter')->where('page', '[A-Za-z0-9_\-\/]+');

真的到最后了吗?

我在路由文件中遇到了类似的问题。我设法将slug的模式限制为字母数字字符(包括破折号、连字符和斜杠*),但排除了Nova路由(
Nova-api
Nova-vendor
)以及到管理面板的Nova路径(
Nova

这就是
routes/web.php
文件的外观:

Route::get('/{page}','PageController@myRouter');
以及
app/Providers/RouteServiceProvider.php
文件中
RouteServiceProvider
中的
{page}
模式:

公共函数启动()
{
路线:模式('page','^(?nova | nova api | nova供应商)。[a-zA-Z0-9-\/]+$);
父::boot();
}

*)请注意,此模式还允许类似于
/page/one/two

的slug。我的routes文件中的通用slug也存在类似问题。我设法将slug的模式限制为字母数字字符(包括破折号、连字符和斜杠*),但排除了Nova路由(
Nova-api
Nova-vendor
)以及到管理面板的Nova路径(
Nova

这就是
routes/web.php
文件的外观:

Route::get('/{page}','PageController@myRouter');
以及
app/Providers/RouteServiceProvider.php
文件中
RouteServiceProvider
中的
{page}
模式:

公共函数启动()
{
路线:模式('page','^(?nova | nova api | nova供应商)。[a-zA-Z0-9-\/]+$);
父::boot();
}
*)请注意,此模式还允许使用类似
/page/one/two
的slug