使用rails / mongodb,存储编辑日期的最佳方法是什么?我不关心编辑的内容,但我确实关心它的编辑日期。
更好的模型是图书馆的例子:
一本书已经签出并多次检查 - 我只是想存储签出日期和签入日期。
是否可以在一个集合中的单个数组中执行此操作,或者我应该为“结帐”和条目(或“预订”有多个“结帐”)单独收集?
答案 0 :(得分:1)
根据您提供的书籍示例,如果您不打算进行数千次结帐,我认为最好的方法是在Books集合中添加一个嵌入式Checkouts集合(包含您想要的日期和任何字段)
但是你必须记住,每次你加载一本书时,它的所有Checkout都会被加载。基本上,如果你经常需要提取书籍的日期,那就太棒了,但如果很少见,你可能不想这样做。
class Book
include Mongoid::Document
include Mongoid::Timestamps
embeds_many :checkouts
accepts_nested_attributes_for :checkouts, :allow_destroy => true
field :book_name, :type => String
attr_accessible :book_name
end
class Checkout
include Mongoid::Document
include Mongoid::Timestamps
embedded_in :book, inverse_of: :checkouts
end