如何将Mongoid _id转换为时间戳(Rails)

时间:2013-12-10 07:09:52

标签: ruby-on-rails ruby-on-rails-3 mongodb mongoid

我刚看了这篇帖子:

How are MongoDB's ObjectIds generated?

根据答案,MongoDB ID不是随机的,可以很容易地预测。您甚至可以将其转换为时间戳:

http://www.mongodb.org/display/DOCS/Object+IDs

我想知道,是否可以使用52a435840000640002695268 gem将_id(例如52908452636872eda1000000mongoid)转换为时间戳?

1 个答案:

答案 0 :(得分:5)

通过Mongoid将MongoDB ID解析为类BSON::ObjectId的实例,该类具有方法generation_time - http://rubydoc.info/gems/bson/2.0.0/BSON/ObjectId:generation_time

这为您提供了作为Ruby Time对象生成ID的时间,我相信这就是您所追求的。