如何设计生成用户uid?

发布于 2022-09-07 07:57:07 字数 202 浏览 19 评论 0

(手机版没法上传图片,今晚回去补一下)

一般uid如上图是一串固定长度数字,请问是如何生成的?在数据库存储uid的时候,一般不都是从1开始然后自增长的吗?如何实现这种固定长度的id?现在自己有一种思路不知道对不对:在数据库中从1开始自增长uid,然后会出现id为1和21这种位数不同的情况,显示的时候,通过一定的加密算法将不固定长度的uid加密成固定长度uid进行显示吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

吃颗糖壮壮胆 2022-09-14 07:57:07
import uuid
uid = uuid.uuid1()
红尘作伴 2022-09-14 07:57:07

固定长度很好办:

>>> '%012d'%1
'000000000001'
>>> '%012d'%21
'000000000021'
>>> '%012d'%21222
'000000021222'
>>>

或者存数据库时:

>>> import uuid
>>> uuid.uuid4() # 随机生成一个 uuid
UUID('01ff74a3-e22f-4eaa-b268-b040c13e2313')
>>> str(_)
'01ff74a3-e22f-4eaa-b268-b040c13e2313'
>>>
空袭的梦i 2022-09-14 07:57:07

了解下雪花算法。

初与友歌 2022-09-14 07:57:07

了解下 hashids

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文