Laravel Auth::attempt() 返回 false
我是一个家庭爱好者,正在学习Laravel,目前在版本中。我使用的是 Mac,既不是,也不是 .5.3
homestead
vagrant
我目前正在开发一个使用登录和注册系统来创建用户的网站。
我曾经在本地操作我的数据库。php artisan migrate
如下所列,它有三个字段,即:
- 电子邮件
- 用户名
- 密码
我有一个模型(用户.php):User
<?php
namespace blog;
use Illuminate\Notifications\Notifiable;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Contracts\Auth\Authenticatable;
class User extends Model implements Authenticatable {
use \Illuminate\Auth\Authenticatable;
use Notifiable;
protected $fillable = [
'username', 'email', 'password',
];
}
还有一个类(用户控制器.php):UserController
<?php
namespace blog\Http\Controllers;
use Auth;
use blog\User;
use Illuminate\Http\Request;
class UserController extends Controller {
public function postRegister(Request $request) {
$username = $request['username'];
$email = $request['email'];
$password = bcrypt($request['password']);
$user = new User();
$user->email = $email;
$user->username = $username;
$user->password = $password;
$user->save();
return redirect()->route('login');
}
public function postLogin(Request $request) {
$credentials = [
'username' => $request['username'],
'password' => $request['password'],
];
if(Auth::attempt($credentials)) {
return redirect()->route('dashboard');
}
return 'Failure';
}
}
?>
如您所见,我正在使用我的哈希方法。bcrypt()
但是,这个问题是,它总是会导致失败。
我检查了以下链接:
附言:这些链接似乎很难遵循,因为我没有使用该类。Input