如何使用不同的表默认设置Authentication laravel

如何使用不同的表默认设置Authentication laravel,laravel,authentication,laravel-5.3,guard,Laravel,Authentication,Laravel 5.3,Guard,我的数据库radius带有表radcheck,无需迁移。我希望表radcheck作为表身份验证,而不是用户。我尝试将config/auth从“用户”更改为radcheck。但这是一个错误 表radcheck: id, username, attribute, op, value=> as password, barcode radcheck.php中的代码: namespace App\Model\Management; use Illuminate\Database\Eloquent\

我的数据库
radius
带有表
radcheck
,无需迁移。我希望表
radcheck
作为表身份验证,而不是用户。我尝试将
config/auth
从“用户”更改为
radcheck
。但这是一个错误

radcheck

id,
username,
attribute,
op,
value=> as password,
barcode
radcheck.php中的代码:

namespace App\Model\Management;
use Illuminate\Database\Eloquent\Model;

class Radcheck extends Model
{

  protected $table = 'radcheck';
  protected $primarykey = 'id';
  protected $fillable = ['id','username','attribute','op','value','barcode'];
  public $timestamps = false;
  public function radusergroups(){
      return $this->hasMany('App\Model\Management\Radusergroup');
  }
}
然后,我将config/auth从users更改为radcheck in
config/auth

  'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\Model\Management\Radcheck::class,
    ],
错误如下所示:

传递给Illumb\Auth\EloquentUserProvider::validateCredentials()的参数1必须是第385行的Illumb\Contracts\Auth\Authenticatable、App\Model\Management\Radcheck的实例,在C:\xampp\htdocs\e-access\system\vendor\laravel\framework\src\Illumb\Auth\SessionGuard.php中调用并定义


模型应扩展为可验证的:

use Illuminate\Foundation\Auth\User as Authenticable;

class Radcheck extends Authenticable

EloquentUserProvider
只接受
illumb\Foundation\Auth\User
的实例,因此您需要通过
illumb\Foundation\Auth\User

只需按照以下代码更改您的
RadCheck

radcheck.php

namespace App\Model\Management;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class Radcheck extends Authenticatable
{
    use Notifiable;

    protected $table = 'radcheck';
    protected $primarykey = 'id';
    protected $fillable = ['id','username','attribute','op','value','barcode'];
    public $timestamps = false;
public function radusergroups(){
      return $this->hasMany('App\Model\Management\Radusergroup');
    }
}

我明白了,没有错。但我尝试了,我无法登录并显示“这些凭证与我们的记录不匹配”。我使用“值”字段作为“密码”,如何将默认身份验证从字段密码更改为值?@muzamilindra您无法直接更改密码字段。但是您可以在模型类中指定自定义列名
公共函数getAuthPassword(){return$this->password\u column;}
非常感谢您的回答。是的,我知道了。我修正了注册和登录的错误。但使用bcrypt加密登录默认laravel,我希望登录时不使用bcrypt进程,因为我删除了寄存器控制器上的bcrypt进程..我得到了它,没有错误。但我尝试了,我无法登录并显示“这些凭证与我们的记录不匹配”。我使用“值”字段作为“密码”,如何将默认身份验证从字段密码更改为值?