1人のユーザーを設定したLaravel 4アプリがあります。私のログイン ルートではAuth::attempt、電子メールとパスワードを使用して呼び出していますが、常に false として返されます。私は間違いなく正しいパスワードと正しいハッシュをデータベースに持っているので、Hash::checktrue が返されます。
emailの代わりにログインフィールドとして使用しているためだと思いますがusername、そのための設定が表示されません。この質問は、オプションを追加できることを暗示していましconfig/auth.phpたが、機能しませんでした。This questionは配列キーとして使用するように言ってusernameいますが、データベースのユーザー名フィールドを選択しようとするため、SQLエラーが発生します。
ユーザー名フィールドを指定するために User モデルに何かを追加する必要がありますか? これが私のログインルートです:
Route::post('login', function() {
// data from login form
$credentials = array(
'email' => Input::get('email'),
'password' => Input::get('password')
);
$auth = Hash::check(Input::get('password'), Hash::make('mypass'));
var_dump($auth); // this is TRUE
// login was good
$auth = Auth::attempt($credentials);
var_dump($auth); // this is FALSE
});