目标类 [admin] 不存在 laravel 11

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

Laravel 11 有问题。简单的网站工作正常。但是当我访问管理面板时,我在登录后收到此错误。当我访问管理/仪表板时,我收到错误 “PHP 8.3.6 11.6.0 目标类 [admin] 不存在。”

应用\Http\Kernel.php

<?php

namespace App\Http;

use Illuminate\Foundation\Http\Kernel as HttpKernel;

class Kernel extends HttpKernel
{
    /**
     * The application's global HTTP middleware stack.
     *
     * These middleware are run during every request to your application.
     *
     * @var array
     */
    protected $middleware = [
        \App\Http\Middleware\TrustProxies::class,
        \App\Http\Middleware\CheckForMaintenanceMode::class,
        \Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
        \App\Http\Middleware\TrimStrings::class,
        \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
    ];

    /**
     * The application's route middleware groups.
     *
     * @var array
     */
    protected $middlewareGroups = [
        'web' => [
            \App\Http\Middleware\EncryptCookies::class,
            \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
            \Illuminate\Session\Middleware\StartSession::class,
            \Illuminate\Session\Middleware\AuthenticateSession::class,
            \Illuminate\View\Middleware\ShareErrorsFromSession::class,
            \App\Http\Middleware\VerifyCsrfToken::class,
            \Illuminate\Routing\Middleware\SubstituteBindings::class,
            \App\Http\Middleware\CheckDisabled::class,
            \UxWeb\SweetAlert\ConvertMessagesIntoSweetAlert::class,
        ],

        'api' => [
            'throttle:60,1',
            'bindings',
        ],

        'super_admin' => [
            \Illuminate\Session\Middleware\AuthenticateSession::class,
            \App\Http\Middleware\CheckSuperAdmin::class,
        ],

        'admin' => \App\Http\Middleware\CheckAdmin::class,
    ];

    /**
     * The application's route middleware.
     *
     * These middleware may be assigned to groups or used individually.
     *
     * @var array
     */
    protected $routeMiddleware = [
        'auth' => \App\Http\Middleware\Authenticate::class,
        'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
        'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
        'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
        'can' => \Illuminate\Auth\Middleware\Authorize::class,
        'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
        'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
        'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
        'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,
        'admin' => \App\Http\Middleware\CheckAdmin::class,
        'super_admin' => \App\Http\Middleware\CheckSuperAdmin::class,
        'sweetalert' => \UxWeb\SweetAlert\ConvertMessagesIntoSweetAlert::class,
    ];

    /**
     * The priority-sorted list of middleware.
     *
     * This forces non-global middleware to always be in the given order.
     *
     * @var array
     */
    protected $middlewarePriority = [
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
        \App\Http\Middleware\Authenticate::class,
        \Illuminate\Session\Middleware\AuthenticateSession::class,
        \Illuminate\Routing\Middleware\SubstituteBindings::class,
        \Illuminate\Auth\Middleware\Authorize::class,
    ];
}

web.php

<?php

use Illuminate\Support\Facades\Route;

use App\Http\Controllers\HomeController;
use App\Http\Controllers\UserController;
use App\Http\Controllers\EstimateController;
use App\Http\Controllers\CatalogController;
use App\Http\Controllers\ConnectionController;
use App\Http\Controllers\BeamInventoryController;
use App\Http\Controllers\Admin\DashboardController;
use App\Http\Controllers\Auth\LoginController;
use App\Http\Controllers\Auth\ForgotPasswordController;
use App\Http\Controllers\Auth\ResetPasswordController;

Route::get('/test', [HomeController::class, 'testRoute']);

// Home Routes...
// Route::get('', [HomeController::class, 'index']);

Route::redirect('/', '/home');
Route::get('/welcome', [HomeController::class, 'welcome']);
Route::get('/info', [HomeController::class, 'info']);
Route::get('/test', [HomeController::class, 'testRoute']);
Route::get('/home', [HomeController::class, 'index']);
Route::get('/help', [HomeController::class, 'help']);
Route::get('/file-names', [HomeController::class, 'insertFileName']);
Route::get('/getCloudFileNames', [HomeController::class, 'getUserFileNames']);

// Authentication Routes...
Route::get('login', [LoginController::class, 'showLoginForm'])->name('login');
Route::post('login', [LoginController::class, 'login']);
Route::post('logout', [LoginController::class, 'logout'])->name('logout');

// Password Reset Routes...
Route::get('password/reset', [ForgotPasswordController::class, 'showLinkRequestForm'])->name('password.request');
Route::post('password/email', [ForgotPasswordController::class, 'sendResetLinkEmail'])->name('password.email');
Route::get('password/reset/{token}', [ResetPasswordController::class, 'showResetForm'])->name('password.reset');
Route::post('password/reset', [ResetPasswordController::class, 'reset'])->name('password.update');

// Estimate Routes...
Route::post('openLocalFile', [EstimateController::class, 'openLocalFile']);
Route::post('/openCloudFile', [EstimateController::class, 'openCloudFile']);
Route::post('/checkCloudFileExists', [EstimateController::class, 'checkCloudFileExists']);
Route::post('/deleteCloudFile', [EstimateController::class, 'deleteCloudFile']);
Route::post('/saveEstimateData', [EstimateController::class, 'saveEstimate']);
Route::post('/importBofmData', [EstimateController::class, 'importBofmData']);
Route::post('/saveBofMData', [EstimateController::class, 'saveBofM']);
Route::post('/downloadEstimateData', [EstimateController::class, 'downloadEstimateData']);
Route::post('/downloadBofMData', [EstimateController::class, 'downloadBofMData']);
Route::post('/downloadEstimateData', [EstimateController::class, 'downloadEstimateData']);
Route::post('/downloadBofMData', [EstimateController::class, 'downloadBofMData']);

// CatalogController Routes...
Route::get('/catalog-materials', [CatalogController::class, 'getCatalogMaterials']);
Route::get('/catalogs-with-materials', [CatalogController::class, 'getCatalogsWithMaterials']);
Route::post('/update-catalog-materials', [CatalogController::class, 'updateCatalogMaterials']);
Route::get('/catalog-groups', [CatalogController::class, 'getCatalogGroups']);
Route::post('/store-catalog-groups', [CatalogController::class, 'storeCatalogGroups']);
Route::put('/update-catalog-groups/{id}', [CatalogController::class, 'updateCatalogGroups']);
Route::delete('/delete-catalog-groups/{id}', [CatalogController::class, 'destroyCatalogGroups']);
Route::get('/catalogs', [CatalogController::class, 'getCatalogs']);
Route::post('/store-catalogs', [CatalogController::class, 'storeCatalogs']);
Route::put('/update-catalogs/{id}', [CatalogController::class, 'updateCatalogs']);
Route::delete('/delete-catalogs/{id}', [CatalogController::class, 'destroyCatalogs']);
Route::get('/shop-costs', [CatalogController::class, 'getShopCosts']);
Route::post('/update-shop-costs', [CatalogController::class, 'updateShopCosts']);

// ConnectionController Routes...
Route::get('/connections', [ConnectionController::class, 'getConnections']);
Route::post('/store-connections', [ConnectionController::class, 'storeConnections']);
Route::put('/update-connections/{id}', [ConnectionController::class, 'updateConnections']);
Route::delete('/delete-connections/{id}', [ConnectionController::class, 'destroyConnections']);
Route::get('/connection-groups', [ConnectionController::class, 'getConnectionGroups']);
Route::post('/store-connection-groups', [ConnectionController::class, 'storeConnectionGroups']);
Route::put('/update-connection-groups/{id}', [ConnectionController::class, 'updateConnectionGroups']);
Route::delete('/delete-connection-groups/{id}', [ConnectionController::class, 'destroyConnectionGroups']);
Route::get('/connection-groups-with-types', [ConnectionController::class, 'getConnectionGroupsWithTypes']);
Route::post('/update-connection-types', [ConnectionController::class, 'updateConnectionTypes']);
Route::post('/upload-image', [ConnectionController::class, 'uploadimage']);

// BeamInventoryController Routes...
Route::resource('beam-inventory', BeamInventoryController::class);
Route::get('download-text', [BeamInventoryController::class, 'downloadText']);

// User Profile Routes
Route::get('/profile', [UserController::class, 'showProfile'])->name('user.profile');
Route::post('/change-password', [UserController::class, 'changePassword'])->name('user.password');

// Admin Routes
Route::prefix('admin')->namespace('Admin')->name('admin.')->group(function () {
    Route::get('dashboard', [DashboardController::class, 'dashboard'])->name('dashboard');

    // Organizations and Users routes
    Route::group(['middleware' => 'super_admin'], function () {
        Route::get('organizations', [UserController::class, 'getOrganizations'])->name('organizations');
        Route::get('organizations/create', [UserController::class, 'showOrganizationCreate'])->name('organizations.create');
        Route::post('organizations/create', [UserController::class, 'storeOrganizationCreate'])->name('organizations.create');
        Route::get('organizations/{id}/edit', [UserController::class, 'showOrganizationEdit'])->name('organizations.edit');
        Route::put('organizations/{id}/edit', [UserController::class, 'updateOrganizationEdit'])->name('organizations.update');
        Route::delete('organizations/{id}/delete-data', [UserController::class, 'deleteOrganizationDataRequest'])->name('organizations.delete-data');
        Route::delete('organizations/{id}/delete', [UserController::class, 'deleteOrganizationAndData'])->name('organizations.delete');
        Route::put('organizations/{id}/restore', [UserController::class, 'restoreOrganizationAndData'])->name('organizations.restore');
    });

    Route::get('organizations/{id}/users', [UserController::class, 'getOrganizationUsers'])->name('organizations.users');
    Route::get('organizations/{id}/users/create', [UserController::class, 'showOrganizationUserCreate'])->name('organizations.users.create');
    Route::post('organizations/{id}/users/create', [UserController::class, 'storeOrganizationUserCreate'])->name('organizations.users.create');
    Route::get('organizations/{id}/users/{userId}/edit', [UserController::class, 'showOrganizationUserEdit'])->name('organizations.users.edit');
    Route::put('organizations/{id}/users/{userId}/edit', [UserController::class, 'updateOrganizationUserEdit'])->name('organizations.users.update');
    Route::get('organizations/{id}/users/{userId}', [UserController::class, 'showOrganizationUserView'])->name('organizations.users.view');
    Route::delete('organizations/{id}/users/{userId}/delete', [UserController::class, 'userDelete'])->name('organizations.users.delete');
    Route::get('organizations/checkBeforeAddingDefaultData', [UserController::class, 'checkBeforeAddingDefaultData'])->name('organizations.checkBeforeAddingData');
});

谁能帮我解决这个问题吗?

我已经尝试过网上的建议,但没有任何效果

php laravel
1个回答
0
投票

您将“Admin”命名空间设置为所有管理路由,但您的控制器不在“Admin”命名空间中,请从管理路由中删除命名空间('Admin')来解决此问题。

Route::prefix('admin')->name('admin.')->group(function () {
  // .. routes
});
© www.soinside.com 2019 - 2024. All rights reserved.