【问题标题】:Laravel 5.1 Reset Password Function; user's email is in a different tableLaravel 5.1 重置密码功能;用户的电子邮件在不同的表中
【发布时间】:2016-02-24 23:42:24
【问题描述】:

我对 Laravel 的重置密码功能有疑问。我已彻底寻找可能的解决方案,但找不到。此外,我试图仔细检查代码并手动实现它,但由于嵌套而惨遭失败。 (我是 Laravel 的新手)。

根据 Laravel 的文档,用户的电子邮件必须在表 user 中才能工作并且错误代码确认它。

*Column not found: 1054 Unknown column 'email' in 'where clause' (SQL: select * from user where email = usermail@provider.com limit 1*

但是,我们确实存在用户可能有多个电子邮件地址的情况,因此存储在名为 user_email 的不同表中。

有没有人有这种情况的经验并且可以花时间来启发我?

【问题讨论】:

  • 请提供导致您的错误的代码。
  • 因为是标准实现,所以没有具体的代码会导致这个错误,但是需要一个不同的表。一位联系人给了我提示,我正在寻找它可能是“供应商->Laravel->Framework->Src->Illuminate->Auth->Passwords->DataBaseTokenRepository.php”。我明天将进行必要的更改并确认。如果这解决了问题,我会在帖子如何实现自定义表中写一个答案。
  • 即使用户有多封电子邮件,理想情况下,您也应该将密码重置发送到一封主要电子邮件。只是一个建议。并在用户表中使用该电子邮件。

标签: email laravel passwords reset


【解决方案1】:

你有两个选择:

  1. 编写您自己的密码恢复系统。
  2. 让用户选择一个主电子邮件并在用户表中创建一个代表主电子邮件地址的列。

【讨论】:

    猜你喜欢
    • 2015-12-15
    • 2016-08-07
    • 2016-06-22
    • 1970-01-01
    • 1970-01-01
    • 2016-09-25
    • 1970-01-01
    • 1970-01-01
    • 2019-09-24
    相关资源
    最近更新 更多