Класс '\ App\User' не найден в Laravel при изменении пространства имен

Я имею эту ошибку при перемещении User.php в Models/User.php

local.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: фатальная ошибка: класс '\ App\User' не найден

продавец/Laravel/рамки /SRC/Осветите /Auth/EloquentUserProvider.php: 126

Ответ 1

Перейдите в config/auth.php и измените App\User: class на App\Models\User:: class.

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\Models\User::class,
    ],

Также измените пространство имен модели User.php

namespace App\Models;

Ответ 2

Эти ответы неверны, вам не нужно менять пространство имен на \App\Models\User. Автозагрузка загрузит папку моделей, но класс все еще может быть class User, а пространство имен должно быть App. Это то, как он настроен в вашем файле?

namespace App;

class User extends Model {}

Ответ 3

Наконец, я смог его решить, изменив этот код.

 array (
        'driver' => 'eloquent',
        'model' => 'App\\Models\User',
      ),

Ответ 4

Для меня это решило изменить:

            'model' => '{YourAppName}\User',

Ответ 5

Перезагрузите композитор загруженных классов.

composer dump-autoload

Ответ 6

Случилось так, что вы изменили местоположение файла user.php.

Ваша система по-прежнему ищет файл user.php в старой папке. Вам необходимо предоставить системе правильный путь к файлу.

Я хочу, чтобы вы изменили код с 'model' = > App\User:: class, на

'model' = > App\Models\User:: class,

Ответ 7

Если вы используете аутентификацию по умолчанию в Laravel (php artisan make:auth), вы должны изменить RegisterController в app/Http/Controllers/Auth/

use App\User;

в

use App\Models\User;

Кроме того, для остальной функциональности вы изменили пространство имен на вашей модели пользователя:

namespace App\Models;

И измени конфиг /auth.php

'providers' => [
'users' => [
    'driver' => 'eloquent',
    'model' => App\Models\User::class,
],

Ответ 8

если вы используете файл модели user.php в папке Models/user.php, то вам нужно изменить следующий файл, чтобы не было ошибок

где поменять если мы создадим Model Folder в App\http??

сменщик в следующем пути ---

1 Config - - auth.php - поиск смены ключа пользователя ---> app\user TO app\Models\user

2 venedor/composer / -autoload_classmap.php → Путь BAse (app\user TO app\Models\user) -autoload_static.php → Путь BAse (app\user TO app\Models\user )

Ответ 9

Вам нужно изменить App\User на App\Models\User в config/auth.php

Ответ 10

Если конфиг приложения кешируется, возможно, он не сможет получить новую конфигурацию, потому что config: cache выдает эту ошибку перед очисткой и кэшированием конфигурации, поэтому просто удалите кеш вручную:

rm bootstrap/cache/config.php

Ответ 11

Проверьте, соответствует ли ваш импорт точному названию вашего класса. Я обнаружил, что в одном из моих контроллеров был импортирован App\user с "u" в нижнем регистре вместо App\User с "u" в верхнем регистре