【发布时间】:2022-01-25 08:12:22
【问题描述】:
我有一个 ruby on rails 项目,我正在使用设计进行用户身份验证。有什么方法可以让我使用 rails 控制台通过电子邮件检查帐户是否存在?如果没有 - 我有没有办法在控制台中列出应用程序上的所有用户(类似于我如何列出数据库模型的所有实例)?
我有一个邮件列表,我想知道有没有对应的帐号有这些邮件。
【问题讨论】:
标签: ruby ruby-on-rails-3 devise console
我有一个 ruby on rails 项目,我正在使用设计进行用户身份验证。有什么方法可以让我使用 rails 控制台通过电子邮件检查帐户是否存在?如果没有 - 我有没有办法在控制台中列出应用程序上的所有用户(类似于我如何列出数据库模型的所有实例)?
我有一个邮件列表,我想知道有没有对应的帐号有这些邮件。
【问题讨论】:
标签: ruby ruby-on-rails-3 devise console
您可以像在控制器中一样在 Rails 控制台中运行数据库查询。
假设您有一个具有email 属性的User 模型,并且您要检查的电子邮件位于emails 变量中,那么您可以在Rails 控制台中运行以下行:
emails = %w[foo@example.tld bar@example.tld]
User.where(email: emails).order(:email).pluck(:email)
这将返回在数据库中找到的所有电子邮件。或者
emails = %w[foo@example.tld bar@example.tld]
found_emails = User.where(email: emails).order(:email).pluck(:email)
emails - found_emails
这将返回数据库中未找到的所有电子邮件。
【讨论】: