2015-08-28 117 views
0

問題:每次我嘗試驗證時間返回false ::嘗試()Laravel 4.2驗證::嘗試失敗

myUsersModel.php

<?php 
use Illuminate\Auth\UserTrait; 
use Illuminate\Auth\UserInterface; 
use Illuminate\Auth\Reminders\RemindableTrait; 
use Illuminate\Auth\Reminders\RemindableInterface; 

class myUsersModel extends Eloquent implements UserInterface, RemindableInterface{ 

use UserTrait, RemindableTrait; 

protected $table = 'myUsersTable'; 
protected $primaryKey = 'primary_key'; 
public $timestamps = false; 
protected $increments = 'primary_key'; 
protected $fillable = array(
    'user',   //this is like username 
    'password',  //this one contains hashed password values 
    'userlevel', 
    'remember_token', 
); 
    protected $hidden = array('password'); 
} 

myController.php

$attemptData = array(
    'user' => Input::get('textBoxInput'), 
    'password' => Input::get('passwordInput') 
); 
Auth::attempt($attemptData); 
return var_dump(Auth::check()); 

auth.php

'driver' => 'eloquent', 
'model' => 'myUsersModel', 
'table' => 'myUsersTable' 

另一個注意事項:
1.我記得標記爲空varchar(100)
2.我的密碼字段varchar(60)
3.我可以dd(Input:all())
4.獲取表單值在我的數據庫,我對於每個用戶都有不同的哈希和非哈希密碼值。但兩者都無法登錄。

謝謝。

+0

是$ primaryKey'id',因爲默認情況下,laravel假設'id'是用戶標識符。 – yangqi

+0

@yangqi,是的。我解決了這個問題,現在我會分享。 –

回答

0

我沒有發佈我的整個定製模型和控制器,但我的模型有一個電子郵件字段,如'user_e_mail',並滿足我的身份驗證規則的要求,這需要檢查。

這是事情,我不得不覆蓋getReminderEmail()方法根據myUsersModel模型。

public function getReminderEmail() { 
    return $this->user_e_mail; 
} 

所以現在我能夠進行身份驗證。

謝謝。