Laravel 路由故障排除
Laravel Route Troubleshooting
我想弄清楚为什么我的路由抛出 404 错误而不是提供我的图像。我正在使用 Spatie 媒体库来提供私人图片。
我有以下路线 web.php:
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
Route::middleware(['auth'])->group(function () {
Route::get('/images/{$gift}/{$uuid}', 'ImageController@show')->name('images.show');
Route::resource('games', 'GameController');
Route::resource('players', 'PlayerController');
});
Route::get('/', function () {
return view('welcome');
});
当我这样做时:blade 中的 {{ route('images.show', [$gift, $gift->getFirstMedia()->uuid]) }}
正确生成了 URL。但是,单击 link 会导致 404 错误。
ImageController@show 函数存在,目前只做 dd('here');
所以我确信 Laravel 甚至从未尝试调用该函数。
此外,我的 laravel.log 文件中目前没有任何内容。此 404 错误不会生成日志条目。
感谢您的协助!
在 URI 中定义路由参数时,它们只是名称,而不是 PHP 变量:
'/images/{$gift}/{$uuid}'
应该是:
'images/{gift}/{uuid}'
我想弄清楚为什么我的路由抛出 404 错误而不是提供我的图像。我正在使用 Spatie 媒体库来提供私人图片。
我有以下路线 web.php:
Auth::routes();
Route::get('/home', 'HomeController@index')->name('home');
Route::middleware(['auth'])->group(function () {
Route::get('/images/{$gift}/{$uuid}', 'ImageController@show')->name('images.show');
Route::resource('games', 'GameController');
Route::resource('players', 'PlayerController');
});
Route::get('/', function () {
return view('welcome');
});
当我这样做时:blade 中的 {{ route('images.show', [$gift, $gift->getFirstMedia()->uuid]) }}
正确生成了 URL。但是,单击 link 会导致 404 错误。
ImageController@show 函数存在,目前只做 dd('here');
所以我确信 Laravel 甚至从未尝试调用该函数。
此外,我的 laravel.log 文件中目前没有任何内容。此 404 错误不会生成日志条目。
感谢您的协助!
在 URI 中定义路由参数时,它们只是名称,而不是 PHP 变量:
'/images/{$gift}/{$uuid}'
应该是:
'images/{gift}/{uuid}'