我是Mongoid的新手。在我的模型文件中,我创建了一个数据类型为BigDecimal的字段。我想存储时间戳。下面是我使用的模型:作为数字存储时间戳Mongoid
class Test
include Mongoid::Document
field :time_stamp, type: BigDecimal
end
而下面是我用来创建文档代码:
aTime = "Wed Apr 24 09:48:38 +0000 2013"
timest = aTime.to_time.to_i
Test.create({time_stamp: timest})
我看到TIME-STAMP存储为字符串在数据库。任何人都可以指示我将时间戳存储为数据库中的数字,以便我可以对其执行一些操作。提前致谢。
要存储时间戳,您需要'include Mongoid :: Timestamps' ..这将为您的文档创建:created_at&:updated_at字段。不知道你的领域':time_stamp'是如何神奇地用时间字符串填充的。 – brayne 2013-04-24 22:25:53
这可能是Mongoid的MongoDB驱动程序Moped中的一个错误。你可以通过在mongo shell中查询发布你可以看到的数据吗? 如果你真的只想存储时间戳,你可以将字段类型设置为'Time'而不是'BigDecimal'。 – davogones 2013-04-27 05:18:16
@senthil,只是试图重现和调出价值(time_stamp)被存储为一个数字。 mongoid(3.0.23) – ted 2013-05-20 10:29:25