首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >生成uuid,大小为16,数据类型为binary

生成uuid,大小为16,数据类型为binary
EN

Stack Overflow用户
提问于 2019-07-12 15:02:25
回答 1查看 239关注 0票数 0

为rails中的16位二进制数据类型生成uuid

我用过这个'SecureRandom.uuid‘,但它需要很大的尺寸。它占用很大的空间,我有binary(16)数据类型和大小,database=mysql;uuid = SecureRandom.uuid

我想要16个大小的uuid和存储在二进制数据类型。

EN

回答 1

Stack Overflow用户

发布于 2019-07-12 15:17:37

试试这个:

代码语言:javascript
复制
require 'securerandom'
uuid = SecureRandom.hex 16

在一个典型的模型中,你会这样做:

代码语言:javascript
复制
before_create :set_uuid
def set_uuid
  self.uuid ||= SecureRandom.hex 16 # or self.id, whatever your attribute is named
end

如果您使用的是PG,那么它对UUID的支持很好,而对性能的影响很小,所以您可以在迁移中只定义uuid列。https://lab.io/articles/2017/04/13/uuids-rails-5-1/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57001731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档