Ruby on rails Desive是否使用同一帐户的多个电子邮件\u id工作??

Ruby on rails Desive是否使用同一帐户的多个电子邮件\u id工作??,ruby-on-rails,email,authentication,devise,Ruby On Rails,Email,Authentication,Devise,是一个奇妙的gem,可用于基本或omniauth身份验证注册以及会话维护、重新发送确认密码等 但是,是否可以使用Desive将多个电子邮件地址映射到同一用户 我有3,4个电子邮件ID,例如 sahil@abc.com sahil@xyz.com sahil@mno.com 用例和示例 我已使用我的第一个电子邮件id注册,即sahil@abc.com使用自动系统创建帐户。但我总是喜欢使用我的其他电子邮件id,即sahil@xyz.com。因此,我想建立一个系统,用户可以使用上述任意一个电子邮件地址

是一个奇妙的gem,可用于基本或omniauth身份验证注册以及会话维护、重新发送确认密码等

但是,是否可以使用Desive将多个电子邮件地址映射到同一用户

我有3,4个电子邮件ID,例如

  • sahil@abc.com
  • sahil@xyz.com
  • sahil@mno.com
  • 用例和示例

    我已使用我的第一个电子邮件id注册,即
    sahil@abc.com
    使用自动系统创建帐户。但我总是喜欢使用我的其他电子邮件id,即
    sahil@xyz.com
    。因此,我想建立一个系统,用户可以使用上述任意一个电子邮件地址,使用相同/不同的密码登录。但是用户应该有一个单独的帐户。

    我想说:

    • 您有一个电子邮件字段

    • 你有其他的电子邮件存储在某处


    你可以告诉Desive。

    我认为更酷的方法是尝试覆盖“身份验证密钥”方法,因为它是

    但无论如何,下面的链接有一个:)


    这是我真正需要的

    它所做的是:

  • 首先尝试通过使用电子邮件id搜索来查找用于身份验证的用户记录
  • 如果它得到记录,它将返回记录,否则我们进入下一部分
  • 它会在授权电子邮件表中查找表中是否存在任何已验证和确认的电子邮件。如果有这样的条目,它会尝试查找与该特定授权电子邮件相关的用户,并返回该用户
  •   def self.find_for_database_authentication(conditions={})
        (self.find_by_email(conditions[:email])) || (AuthorizedEmail.confirmed.find_by_email(conditions[:email]).user if AuthorizedEmail.confirmed.find_by_email(conditions[:email]).present?)
      end