在我的用户模型中,我有以下方法:
def confirmation_token
self.confirmation = loop do
random_token = SecureRandom.urlsafe_base64(16, false)
break random_token unless User.exists?(confirmation: random_token)
end
end
此方法只会创建一个随机令牌来确认用户的电子邮件...
如您所见,它在 User.exists?(confirmation:random_token) 时循环,这意味着它验证用户表中是否已经没有类似的令牌。
我的问题是:如果我在“用户表”中有很多行,我需要在这个(确认)列中添加索引以获得更高的性能?
注意(这个方法每个用户只执行一次......当用户第一次注册时)