【问题标题】:Laravel throwing 404 for an existing routeLaravel 为现有路线抛出 404
【发布时间】:2019-12-25 05:17:18
【问题描述】:

谁能帮我理解这些路线有什么问题:-

从这些路由列表中,第三条和最后一条返回 404。控制器没有问题。当我运行 php artisan route:list 时,它们会按预期显示。

Route::get('/uploads', 'ImageController@adminIndex')->name('admin.images.index');
Route::get('/uploads/{image}', 'ImageController@adminShow')->name('admin.image.indivisual');
Route::get('/uploads/request', 'ImageController@imageRequests')->name('admin.images.request');
Route::get('/uploads/request/{image}', 'ImageController@individualRequest')->name('admin.images.request.individual');
Route::post('/uploads/accept', 'ImageController@acceptImage')->name('admin.accept.image');
Route::post('/uploads/decline/', 'ImageController@declineImage')->name('admin.decline.image');
Route::get('/uploads/all', 'ImageController@index')->name('admin.images.list');

让我感到困惑的是,将这两条路线的 上传 更改为 图像 解决了问题,并且它们工作得很好。

Route::get('/uploads', 'ImageController@adminIndex')->name('admin.images.index');
Route::get('/uploads/{image}', 'ImageController@adminShow')->name('admin.image.indivisual');
Route::get('/images/request', 'ImageController@imageRequests')->name('admin.images.request');
Route::get('/uploads/request/{image}', 'ImageController@individualRequest')->name('admin.images.request.individual');
Route::post('/uploads/accept', 'ImageController@acceptImage')->name('admin.accept.image');
Route::post('/uploads/decline/', 'ImageController@declineImage')->name('admin.decline.image');
Route::get('/images/all', 'ImageController@index')->name('admin.images.list');

我试过php artisan route:clear

另外,公共目录中没有文件夹会产生任何冲突。

注意:所有路线都分组在

Route::group(['prefix' => 'admin', 'middleware' => 'role:administrator|auth'], function () {
  // Other routes in this group are working just fine. No issues.
});

感谢您的帮助。

【问题讨论】:

  • 您只是显示路线,您打算如何调用/使用?这也需要清除。
  • 我用他们的名字称呼他们。例如:<a href="{{ route('admin.images.request') }}"> Link </a>。角色和权限也没有问题。 @Gabriel

标签: php laravel laravel-5 laravel-routing


【解决方案1】:

请将路由器移到列表的最后:

Route::get('/uploads/{image}', 'ImageController@adminShow')->name('admin.image.indivisual');

因为它包括Route::get('/uploads/request'Route::get('/uploads/all' 那么它覆盖了这两个路由器

路由器列表的代码:

Route::get('/uploads', 'ImageController@adminIndex')->name('admin.images.index');
Route::get('/uploads/request', 'ImageController@imageRequests')->name('admin.images.request');
Route::get('/uploads/request/{image}', 'ImageController@individualRequest')->name('admin.images.request.individual');
Route::post('/uploads/accept', 'ImageController@acceptImage')->name('admin.accept.image');
Route::post('/uploads/decline/', 'ImageController@declineImage')->name('admin.decline.image');
Route::get('/uploads/all', 'ImageController@index')->name('admin.images.list');
// move to last 
Route::get('/uploads/{image}', 'ImageController@adminShow')->name('admin.image.indivisual');

【讨论】:

  • 谢谢,@Ryan。完全忘记路线优先。你拯救了我的一天。
猜你喜欢
  • 2017-06-12
  • 1970-01-01
  • 1970-01-01
  • 2019-04-25
  • 2012-10-07
  • 1970-01-01
  • 2018-12-07
  • 2018-10-04
  • 2018-10-23
相关资源
最近更新 更多