你好,不知为何,我目前陷入了以下情况:
作为管理员,我有三个列出的电子邮件地址:
主地址:正确的那个
备用地址:同一个但未经确认的地址
第三个地址:另一个真正不同的备用地址,且已确认。
进入 Rails 控制台后,我可以查找用户 ID,但不知道如何列出多个备用电子邮件地址并删除其中一个。通过 UI 操作似乎无效,可能是因为电子邮件地址相同。
我该如何修正这个问题?
你好,不知为何,我目前陷入了以下情况:
作为管理员,我有三个列出的电子邮件地址:
主地址:正确的那个
备用地址:同一个但未经确认的地址
第三个地址:另一个真正不同的备用地址,且已确认。
进入 Rails 控制台后,我可以查找用户 ID,但不知道如何列出多个备用电子邮件地址并删除其中一个。通过 UI 操作似乎无效,可能是因为电子邮件地址相同。
我该如何修正这个问题?
你试过从 Rails 控制台禁用邮箱地址吗?我暂时想不起具体的命令了。
你好,是的,这正是我试图做的事情。在控制台中我可以查找用户,但我不清楚如何查询多个电子邮件地址并移除重复项。
当我选择用户时,我没有看到电子邮件,它们一定存储在某个其他记录中。
Koen
电子邮件地址存储在 user_emails 表中。你可以通过用户 ID 来查找它们:
UserEmail.where(user_id: <user_id>)
将上述命令中的 <user_id> 替换为实际的用户 ID。
找到你想要删除的 UserEmail 记录的 id 值。使用该 ID,运行以下命令以返回你想要删除的单个记录:
identical_email = UserEmail.find(<identical_email_id>)
仔细检查返回的结果,确认这是你想要删除的邮箱。然后运行:
identical_email.destroy
在从控制台运行任何破坏性命令之前,最好先备份你的站点数据库。如果出现意外,你可以恢复备份。
非常感谢!事实证明,对于重复的邮箱,我只能获取到一个邮箱 ID。我猜测,那个无法删除的未确认邮箱可能尚未与该 ID 关联?或许是因为验证流程尚未完成,状态还不太明确?
我采取的解决方法是:先将主邮箱切换为两个备用邮箱之一。虽然那个未确认的重复邮箱仍然无法直接删除,但当我删除已确认的邮箱(即原来的主邮箱)后,那个未确认的重复邮箱也随之被删除了。
随后,我将原始邮箱地址添加为次要邮箱,再将其切换为主邮箱。
一切已解决,在此过程中也学到了很多 ![]()
This topic was automatically closed 0 minutes after the last reply. New replies are no longer allowed.