我想知道唯一识别rails对象的最佳方法是什么。即将它们存储在索引中,目前我一直在这样做
$index.document(@paper.id).add(fields, :variable => variables)
@ paper.id唯一标识它。但是当我存储其他对象时,即@card
$index.document(@card.id).add(fields, :variable => variables)
它将覆盖我的索引,因为即时通讯使用数据库自动增量(这不是唯一的因为它们都以1开始并递增)。在我的所有rails对象中使用唯一标识符的最佳解决方案是什么?
我查看了UUID,并对将它们作为我的主要密钥有一些保留意见......
http://ariejan.net/2008/08/12/ruby-on-rails-uuid-as-your-activerecord-primary-key/
我猜我总是可以单独制作一个专栏。或者我可以做一些事情,比如获取对象的id,然后将其附加到creation_time。这些好主意是什么?如果没有,那么这将是一个很好的解决方案吗?
谢谢!
答案 0 :(得分:1)
我会使用对象id和对象表名称的组合。