1

我在 rails 中使用 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}

任何形式的帮助将不胜感激,再次感谢。

4

1 回答 1

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
于 2013-04-01T12:44:46.627 回答