2015-08-28 88 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; 
} 

所以现在我能够进行身份验证。

谢谢。