使用电子邮件而不是用户名登录Laravel

使用电子邮件而不是用户名登录Laravel,laravel,Laravel,我有自定义用户名表结构: 用户ID |登录|密码 我已经创建了我自己的类用户扩展雄辩 除了注册表单中的过账字段外,一切正常(登录,我可以在我准备好的语句中创建一个用户)。我有: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'where clause' (SQL: select count(*) as aggregate from `users` where `email` = some@mail.com)

我有自定义用户名表结构: 用户ID |登录|密码

我已经创建了我自己的类用户扩展雄辩 除了注册表单中的过账字段外,一切正常(登录,我可以在我准备好的语句中创建一个用户)。我有:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'where clause' (SQL: select count(*) as aggregate from `users` where `email` = some@mail.com)
我搜索了很多论坛,但是我没有为我的自定义专栏创建迁移。它是必需的还是我可以用其他方式修复它


提前谢谢

您正试图使用
电子邮件登录。但是您的数据库中没有
电子邮件
字段

要按您想要的方式工作(
用户
密码
),您必须将电子邮件更改为用户

if (Auth::attempt(array('user' => $user, 'password' => $password))) 
{
    return Redirect::intended('dashboard');
}
只需找到进行身份验证的位置(可能在
app/routes.php
)并进行更改

如果您找不到更改的地方,请从过滤器和控制器中输入一些代码,这样我们就能够为您提供更多帮助


=D

谢谢,丹尼斯,我知道,自动测试很好用。我在注册新用户发布的数据时遇到问题。当我使用User::create时,一切都很好。但问题出现在发布的数据上。我是否使用迁移来自动更新应用程序结构?问题在于$validator=validator::make(Input::all(),$rules);它将查询生成到错误的列。我找到了答案:$rules=array('email'=>'Required | Between:3,64 | email | Unique:users,Login');它是:>Unique:users,Login'我不明白你说的话。不管怎样,要么接受我的asnwer,要么做一个新的正确的,plz=我忘了在验证规则中添加表名;)谢谢丹尼斯的帮助!:)