使用 rails/mongodb,存储编辑日期的最佳方式是什么?我不在乎编辑了什么,但我确实在乎它被编辑的日期。
更好的模型是图书馆书籍示例:
一本书被多次签出和签入-我只想存储签出日期和签入日期。
是否可以在一个集合中的单个数组中执行此操作,或者我应该为“结帐”和一个条目(或书“有许多“结帐”)制作一个单独的集合?
使用 rails/mongodb,存储编辑日期的最佳方式是什么?我不在乎编辑了什么,但我确实在乎它被编辑的日期。
更好的模型是图书馆书籍示例:
一本书被多次签出和签入-我只想存储签出日期和签入日期。
是否可以在一个集合中的单个数组中执行此操作,或者我应该为“结帐”和一个条目(或书“有许多“结帐”)制作一个单独的集合?
根据您提供的书籍示例,如果您不打算拥有数千个结帐,我认为最好的方法是在 Books 集合中嵌入一个结帐集合(带有日期和您想要的任何字段)。
但是您必须记住,每次加载 Book 时,它的所有 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