Auth :: попытка всегда вернуть false

У меня проблема с аутентификацией laravel 6.x. Auth :: try () всегда возвращает false. Помогите пожалуйста мне. Спасибо всем!

мой User.php

<?php

namespace App;

use IlluminateContractsAuthMustVerifyEmail;
use IlluminateFoundationAuthUser as Authenticatable;
use IlluminateNotificationsNotifiable;
use IlluminateDatabaseEloquentSoftDeletes;
use AppModelsComment;
use AppModelsPost;
use AppModelsRole;

class User extends Authenticatable
{
    use Notifiable;
    use SoftDeletes;
    protected $table = "users";
    protected $dates = ['deleted_at'];

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'name', 'email', 'password', 'role_id', 'admin'
    ];

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

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

    public function comments()
    {
        return $this->hasMany(Comment::class, 'user_id', 'id');
    }

    public function posts()
    {
        return $this->hasMany(Post::class, 'user_id', 'id');
    }

    public function role()
    {
        return $this->belongsTo(Role::class, 'role_id', 'id');
    }

}

мой UserController.php

public function loginAdmin(Request $request)
    {
        if (Auth::attempt(['email' => $request->email, 'password' => $request->password])) {
            return redirect('admin');
        } else {
            return redirect('admin/login')->with('notify', 'Đăng nhập không thành công !');
        }
    }

моя форма логин

<form class="login-form" action="admin/login" method="POST">
                @csrf
                <div class="form-group">
                    <div class="form-label-group">
                        <input type="email" id="inputEmail" name="email" class="form-control"
                               placeholder="Email address"
                               required="required" autofocus="autofocus">
                        <label for="inputEmail">Email address</label>
                    </div>
                </div>
                <div class="form-group">
                    <div class="form-label-group">
                        <input type="password" id="inputPassword" name="password" class="form-control"
                               placeholder="Password"
                               required="required">
                        <label for="inputPassword">Password</label>
                    </div>
                </div>
                <button type="submit" class="btn btn-primary btn-block">Login</button>
            </form>

моя функция createUser. это функция, которую я использую для создания пользователя. я использую bcrypt после сохранения данных, но он все еще не работает. Я не знаю, где моя проблема. Помогите пожалуйста мне.

function createUser($attributes)
    {
        $data = $attributes->all();
        $data['password'] = bcrypt($attributes->passowrd);
        if (!isset($data['admin'])) {
            $data['admin'] = 0;
        }
        if ($data['admin'] == 0) {
            $data['role_id'] = null;
        }
        return $this->create($data);
    }

вот и весь код про это моя проблема. Помогите пожалуйста мне . Спасибо всем!

Всего 1 ответ


Существует опечатка, пожалуйста, исправьте как `` `$ attribute-> password````


Есть идеи?

10000