当我的新网站推出时,用户很少。目前用户的个人资料页面是/ users /:id,因此在早期阶段它将是/ users / 6等。我不希望其他人知道该网站有多少用户。我认为带有数字和字母的长id(例如uuid)看起来很难看,所以我更喜欢它只是数字。
如何使用friendly_id gem创建一个也是唯一的随机数slug?这也是我的第一个网站,所以任何"最佳实践"有关用户ID混淆的提示会很有帮助。感谢。
答案 0 :(得分:1)
这是现有项目的一个例子:
class User < ActiveRecord::Base
extend FriendlyId
friendly_id :email, use: [:slugged, :finders]
def normalize_friendly_id(email)
Digest::MD5.hexdigest(email)
end
def should_generate_new_friendly_id?
slug.blank?
end
end
您可以使用以下内容将MD5更改为随机数:
SecureRandom.random_number(1_000_000_000)