【发布时间】:2020-01-08 03:17:38
【问题描述】:
我想应用一个不明显的唯一 ID,但希望不超过 10 个字符(固定长度)并且只有数字。
现在使用SecureRandom.random_number (10 ** 9),但我怀疑将来是否会出现重复问题,也曾经实现过DateTime.now.strftime('% Q'),希望每毫秒找到一个唯一的id,但它产生了13个字符。
现在,我只是发布问题。如果您碰巧知道如何执行此操作,我将不胜感激
【问题讨论】:
-
这个其实是用来做订单id的,这样下单的人在提id的时候就没有问题了。如果它是一个字母表,那么它就足够复杂,以至于有人提到它,特别是如果它的长度超过 10 个字符。
-
好的。您可以选择使用连续数字(1、2、3 等)而不是随机数字吗?每个订单 ID 都必须难以猜测吗?订单 ID 是访问订单信息唯一需要的吗?
-
我觉得序列号太容易猜了。是的,订单 ID 是唯一需要有人知道订单详细信息的东西,这就像发票号码
标签: ruby-on-rails-5