возникает проблема с аутентификацией в laravel, так как у меня есть имя пользователя и пароль в разных таблицах. Поскольку Auth использует одну и ту же таблицу для имени пользователя и пароля, но моя база данных уже настроена, где имя пользователя находится в таблице пользователей, а пароль в таблице webpages_membership, и я не могу изменить структуру базы данных, потому что эта база данных также используется другим мобильным приложением и веб-сайтом. Итак, как мне использовать Auth для системы входа в систему.
@бтл:
Я попробовал решение, но теперь есть еще одна ошибка
"Undefined index: password" in vendor\laravel\framework\src\Illuminate\Auth\GenericUser.php
Ниже приведен код моей пользовательской модели.
Код:
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
use App\WebPages_Membership;
class User extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $table = 'Users';
protected $dbPrefixOveride = '';
protected $primaryKey = 'UserId';
protected $fillable = [
'Username', 'FirstName', 'LastName','Email','MobileNumber','CreatedBy','CreatedDate','ModifiedBy','ModifiedDate','DistributorId','Telephone','IsAuthorized','AlternateMobileNumber','AlternateEmail','IsDeleted','UnauthorizationRemark'
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
/*protected $hidden = [
'password', 'remember_token',
];*/
public function webpagesMembership() {
return $this->hasOne(WebPages_Membership::class);
}
public function getPasswordAttribute() {
return $this->webpagesMembership->getAttribute('Password');
}
}
?>