(手机版没法上传图片,今晚回去补一下)
一般uid如上图是一串固定长度数字,请问是如何生成的?在数据库存储uid的时候,一般不都是从1开始然后自增长的吗?如何实现这种固定长度的id?现在自己有一种思路不知道对不对:在数据库中从1开始自增长uid,然后会出现id为1和21这种位数不同的情况,显示的时候,通过一定的加密算法将不固定长度的uid加密成固定长度uid进行显示吗?
(手机版没法上传图片,今晚回去补一下)
一般uid如上图是一串固定长度数字,请问是如何生成的?在数据库存储uid的时候,一般不都是从1开始然后自增长的吗?如何实现这种固定长度的id?现在自己有一种思路不知道对不对:在数据库中从1开始自增长uid,然后会出现id为1和21这种位数不同的情况,显示的时候,通过一定的加密算法将不固定长度的uid加密成固定长度uid进行显示吗?
固定长度很好办:
>>> '%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'
>>>
15 回答8.4k 阅读
8 回答6.2k 阅读
4 回答4.4k 阅读✓ 已解决
5 回答3.2k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
4 回答3.8k 阅读✓ 已解决
1 回答2.9k 阅读✓ 已解决