Route Admin/AdminController 未找到新的 Laravel 项目 [重复]

问题描述 投票:0回答:1

我的配置如下

routes/web.php

<?php


use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider and all of them will
| be assigned to the "web" middleware group. Make something great!
|
*/
Route::get('/', function () {
    return view('auth.login');
});

Route::get('/logout', 'Auth\LoginController@logout')->name('logout');
Auth::routes([
    'register' => false,
    'reset' => false,
    'verify' => false,
]);

//Route::get('/home', 'HomeController@index')->name('home');

Route::prefix('admin')->group(function () {

    Route::group(['middleware' => ['auth', 'role:admin']], function () {
        Route::get('/', 'Admin\AdminController@index')->name('dashboard');
        Route::resource('permissions', 'Admin\PermissionController');
        Route::resource('reviews', 'Admin\ReviewController');
        Route::resource('roles', 'Admin\RoleController');
        Route::resource('users', 'Admin\UserController');
    });
});

但是我得到这个错误

Illuminate \ Contracts \ Container \ BindingResolutionException
Target class [Admin/AdminController] does not exist.

我的 AdminController 存在于

app/Http/ControllersAdmin/

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class AdminController extends Controller
php laravel
1个回答
0
投票

Laravel 8+ 使用另一种方式,所以不是

Route::get('/', 'Admin\AdminController@index')->name('dashboard');
,它应该是
Route::get('/', [AdminController::class, 'index'])->name('dashboard');
.

所有路线都一样……现在不一样了……

这部分文档会解释更多...

© www.soinside.com 2019 - 2024. All rights reserved.