【问题标题】:Getting: Error Class 'Illuminate\Foundation\Auth\users' not found获取:找不到错误类“Illuminate\Foundation\Auth\users”
【发布时间】:2021-12-08 21:26:34
【问题描述】:

首先我想说的是,我在 Stack Overflow 上找到的解决方案尝试了类似的问题。

我刚刚迁移,问题就开始了……试过composer updatecomposer dump-autoloadnpm update vue-loader没有帮助。 用户模型似乎有问题,但我无法弄清楚是什么问题。

用户模型:

<?php

namespace App\Models;

use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Foundation\Auth\users as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;

class users extends Authenticatable
{
    use HasApiTokens, HasFactory, Notifiable;

    /**
     * The attributes that are mass assignable.
     *
     * @var string[]
     */
    protected $fillable = [
        'first_name',
        'last_name',
        'username',
        'password',
    ];

    /**
     * The attributes that should be hidden for serialization.
     *
     * @var array
     */
    protected $hidden = [
        'password',
        'remember_token',
    ];

    /**
     * The attributes that should be cast.
     *
     * @var array
     */
    protected $casts = [
        'email_verified_at' => 'datetime',
    ];
}

控制器:

<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use App\Providers\RouteServiceProvider;
use App\Models\users;
use Illuminate\Foundation\Auth\RegistersUsers;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Validator;

class RegisterController extends Controller
{
    /*
    |--------------------------------------------------------------------------
    | Register Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles the registration of new users as well as their
    | validation and creation. By default this controller uses a trait to
    | provide this functionality without requiring any additional code.
    |
    */

    use RegistersUsers;

    /**
     * Where to redirect users after registration.
     *
     * @var string
     */
    protected $redirectTo = RouteServiceProvider::HOME;

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest');
    }

    /**
     * Get a validator for an incoming registration request.
     *
     * @param  array  $data
     * @return \Illuminate\Contracts\Validation\Validator
     */
    protected function validator(array $data)
    {
        return Validator::make($data, [
            'first_name' => ['required', 'string', 'max:255'],
            'last_name' => ['required', 'string', 'max:255'],
            'username' => ['required', 'string', 'max:255'],
            'password' => ['required', 'string', 'min:8', 'confirmed'],
        ]);
    }

    /**
     * Create a new user instance after a valid registration.
     *
     * @param  array  $data
     * @return \App\Models\users
     */
    protected function create(array $data)
    {
        return users::create([
            'first_name' => $data['first_name'],
            'last_name' => $data['last_name'],
            'username' => $data['username'],
            'password' => Hash::make($data['password']),
        ]);
    }
}

【问题讨论】:

  • 尝试删除composer.lock 文件并再次触发composer update。如果它不起作用,请尝试触发composer update --no-scripts
  • 没有帮助。都试过了……

标签: php laravel vue.js


【解决方案1】:

User 模型中的use Illuminate\Foundation\Auth\users as Authenticatable 替换为use Illuminate\Foundation\Auth\User as Authenticatable

因为Auth 中没有users 类。

让我知道它是否解决了您的问题。

【讨论】:

    猜你喜欢
    • 2017-05-03
    • 1970-01-01
    • 2018-02-11
    • 1970-01-01
    • 2015-06-28
    • 2020-12-30
    • 2022-07-21
    • 2016-05-26
    • 2020-07-03
    相关资源
    最近更新 更多