Laravel 5.2使用其他列名重置密码(不是电子邮件)

时间:2016-12-20 07:42:18

标签: php laravel-5 laravel-5.2

我从另一个接管项目,旧数据库架构使用“用户名”而不是“电子邮件”。当我添加重置密码功能时,它会导致冲突。

public function getEmailForPasswordReset()
{
    return $this->email;
}

是否有某种方法可以自定义该特征以使用“电子邮件”上的其他列名?

2 个答案:

答案 0 :(得分:0)

我为用户模型添加了一个新的访问者:

public function getEmailAttribute()
{
    return $this->attributes['username'];
}

希望有人得到类似的问题可以使用它。欢迎使用更好的解决方案。

答案 1 :(得分:0)

这样怎么样?

https://laravel.com/docs/5.0/schema#renaming-columns

将旧列重命名为{{1}}。对于未来而言,它要好得多,而不是从旧列中创建一个新属性:)