Datamapper datetime属性

时间:2011-05-01 21:17:21

标签: ruby datetime sqlite datamapper

我遇到了DataMapper的DateTime属性的一些奇怪行为。

这是一个简单的代码:

DataMapper.setup(:default, 'sqlite::/path/to/some/file.db')

class Event
  include DataMapper::Resource

  property :id, Serial
  property :time, DateTime

end

我创建了一个项目:

e = Event.new
e.time = Time.now
e.save

现在发生了奇怪的事情: 保存前的时间没问题。 在数据库文件中,时间也可以。

puts e.time.to_s 
# 2011-05-01T22:38:49+02:00

但后来我没有“时间”部分就获得了DateTime。

puts Event.first.time.to_s 
# 2011-05-01T00:00:00+02:00

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

不幸的是,您遇到了最新DataObjects中的错误。它将在下一个版本中修复,已经有一个修复错误的拉取请求:https://github.com/datamapper/do/pull/9