Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 27.07.2017 07:56:26

Кастомная аутентификация Auth::attempt

При использовании фасада Auth смотрим функцию Auth::attempt версия Laravel 5.2

в доках есть конструкция:

if (Auth::attempt(['email' => $email, 'password' => $password], $remember)) {
    // The user is being remembered...
}

при этом поле 'email' может быть указанно любым и насколько я понял ссылается на поле с таким именем в БД через механизм Eloquent
но поле 'password' должно быть в БД именно с таким названием.

Проверил в /Illuminate/Auth/EloquentUserProvider.php

     /**
     * Validate a user against the given credentials.
     *
     * @param  \Illuminate\Contracts\Auth\Authenticatable  $user
     * @param  array  $credentials
     * @return bool
     */
    public function validateCredentials(UserContract $user, array $credentials)
    {
        $plain = $credentials['password'];

        return $this->hasher->check($plain, $user->getAuthPassword());
    }

при том что в /Illuminate/Foundation/Auth/AuthenticatesUsers.php

     /**
     * Get the needed authorization credentials from the request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    protected function getCredentials(Request $request)
    {
        return $request->only($this->loginUsername(), 'password');
    }

Так вот вопрос на засыпку можно ли как то поменять 'password' если в БД (уже готовой) оно называется по другому например 'pass'
Или надо полностью переписывать механизм: делать свой драйвер, сервиспровайдер, гард???
Просто надо логинится к уже существующей БД (без регистрации) городить огород ради этого как то не хо.

Изменено rain_heart (27.07.2017 08:00:17)

Не в сети

#2 27.07.2017 11:29:47

Cheshirrski
masterМастер
Откуда: Днепр
Сообщений: 116
Статей: 2

Re: Кастомная аутентификация Auth::attempt

В модели User переопределить метод getAuthPassword()

PHP
  public function getAuthPassword()
  {
    return 
$this->pass;
  }

Не в сети

#3 27.07.2017 13:20:30

Re: Кастомная аутентификация Auth::attempt

Работает!

Не в сети

Подвал раздела