如何使用控制台在 rails 项目的 ruby 中列出设计用户?

How can I list devise users in a ruby on rails project using the console?

我在 rails 项目上有一个 ruby,我正在使用 devise 进行用户身份验证。我有什么方法可以使用 rails 控制台通过电子邮件检查帐户是否存在?如果没有——我有没有办法在控制台中列出应用程序上的所有用户(类似于我可以列出数据库模型的所有实例的方式)?

我有一个邮箱列表,我想知道是否有对应的账户有这样的邮箱。

您可以 运行 在您的 Rails 控制台中查询数据库,就像在您的控制器中一样。

假设您有一个具有 email 属性的 User 模型,并且您要检查的电子邮件位于 emails 变量中,那么您可以 运行 Rails 控制台中的以下几行:

emails = %w[foo@example.tld bar@example.tld] 
User.where(email: emails).order(:email).pluck(:email)

这将 return 在数据库中找到的所有电子邮件。或者

emails = %w[foo@example.tld bar@example.tld] 
found_emails = User.where(email: emails).order(:email).pluck(:email)
emails - found_emails

return 数据库中未找到的所有电子邮件。