仅用于登录的电子邮件和密码

Only email and password for login

我有很多用户的属性table。管理员需要注册一个新用户。我的问题是如何仅使用电子邮件和密码登录?。我的代码现在当用户登录用户将获得 this error and this users database table 。我只想在登录时输入电子邮件和密码。

Controller\Auth\AuthController.php

public function login(Request $request)
{
    if (!\Auth::attempt(['email' => $request->email, 'password' => $request->password])) {
        return redirect()->back();
    } else {
        return view('layouts.admin');
    }
}

Http\UserController.php

public function store(Request $request)
{
    $user = new User();
    $user->Id_staff = $request['Id_staff'];
    $user->name = $request['name'];
    $user->noIc = $request['noIc'];
    $user->email = $request['email'];
    $user->password = bcrypt($request['password']);
    $user->pusat_tangungjawab = $request['pusat_tangungjawab'];
    $user->jawatan = $request['jawatan'];
    $user->user_group = $request['user_group'];
    $user->user_level = $request['user_level'];
    $user->phone_no = $request['phone_no'];
    $user->save();

    return redirect()->route('users.index');
}

如果您为用户 table 创建迁移,可能是因为您没有为 Id_staff 设置可为空。因此,如果您创建了一个用户但没有 post Id_staff 的值,您将收到该错误。一些解决方案随机设置默认值或在您的迁移中设置为可空,例如:

$table->string('Id_staff')->nullable();