改变Laravel中用户类的路径

时间:2018-04-01 17:08:52

标签: php laravel

我将laravel安装中的User.php移动到另一个文件夹并相应地调整了命名空间。但是,当我登录页面时,laravel无法找到该类并抛出错误。

enter image description here

我运行了composer clear-cashcomposer dump-autoload,但由于Laravel仍在搜索App/User.php而非App/Classes/User/User.php

,因此无法运行

User.php看起来像这样:

namespace App\Classes\User;

use App\Events\EventGenerator;
use App\Events\User\UserRegistered;

use App\Permission;
use App\Role;
use Laratrust\Traits\LaratrustUserTrait;

use \Illuminate\Contracts\Auth\Authenticatable as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Console\Command;


class User extends Model implements Authenticatable {
    use EventGenerator;
    (...)

2 个答案:

答案 0 :(得分:3)

您需要在auth.php

中更改路径类

在你的auth.php中

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

    // 'users' => [
    //     'driver' => 'database',
    //     'table' => 'users',
    // ],
],

想法是改变'model' => App\Classes\User::class,到你班级的路径。

希望这有帮助

答案 1 :(得分:2)

在auth config中有对用户模型的引用,您可能需要在那里调整命名空间。

档案:config/auth.php

设置:providers -> users -> model