Laravel 8 'Route [admin.test] not defined'

Laravel 8 'Route [admin.test] not defined'

我正在尝试编写一条新路线,但它不起作用。 route:list中甚至没有显示这条路线。但是如果我写 route:cache,这条路线是有效的。每一条新路线都很烦人,如何解决?

    Route::group(['prefix' => 'admin', 'middleware' => 'auth', 'as' => 'admin.'], function () {
        Route::get('/test', [AdminIndexController::class, 'index'])->name('test');  
});

在blade.php

<a href="{{ route('admin.test') }}">Test</a>

如果要删除路由缓存,请删除此文件:

bootstrap/cache/routes.php

之后你可以运行 artisan 命令

php artisan cache:clear

但是不使用路由缓存是没有问题的。正如 documentation.

中所述,它可以使“您的路线注册速度提高 100 倍”

在您的路线组中添加此行:

Route::get('/test/create', [AdminIndexController::class, 'create'])->name('test.create');

现在你的路线应该是这样的

Route::group(['prefix' => 'admin', 'middleware' => 'auth', 'as' => 'admin.'], function () {
  Route::get('/test', [AdminIndexController::class, 'index'])->name('test'); 
  Route::get('/test/create', [AdminIndexController::class, 'create'])->name('test.create'); 
});

感谢