无法在哈希中保存数据(Mongoid,Rails)

时间:2013-03-28 19:52:18

标签: ruby-on-rails ruby mongodb mongoid

我在轨道中使用mongoid作为我的mongodb后端的orm。我可以创建一个对象(注意release_date是一个日期对象):

movie1 = Movie.create(title: "The Dark Knight", release_date: "2012-03-03")
=> #<Movie _id: 515490b884322b14e2000002, _type: "Movie", title: "The Dark Knight", release_date: 2012-03-03 00:00:00 UTC> 

但是当我尝试将它与movie.release_date一起使用以将其放入哈希时,它会将日期作为字符串输出,而我无法保存我的哈希:

list.data[1] = {id: movie2.id, title: movie2.title, release_date: movie2.release_date}
 => {:id=>"515490ce84322b14e2000003", :title=>"The Matrix", :release_date=>Sat, 04 Apr 1998}

非常感谢任何形式的帮助,再次感谢。

1 个答案:

答案 0 :(得分:1)

这不是字符串 - Ruby只是在哈希的每个项目上调用inspect来向您显示人类可读的值。请注意,日期周围没有"

class Movie 
    include Mongoid::Document

    field :release_date, type: Date
end

movie1 = Movie.create(title: "The Dark Knight", release_date: "2012-03-03")
hash = {release_date: movie1.release_date}
p hash[:release_date].class # => Date