嗨,我有一个Mongoid模型,Spec,mongoid-history gem添加到它像这样:
class Spec
include Mongoid::Document
include Mongoid::Timestamps
include Mongoid::History::Trackable
field :due_at, type: DateTime
track_history on: [:due_at],
:modifier_field => :modifier, # adds "referenced_in :modifier" to track who made the change, default is :modifier
:version_field => :version, # adds "field :version, :type => Integer" to track current version, default is :version
:track_create => false, # track document creation, default is false
:track_update => true, # track document updates, default is true
:track_destroy => false # track document destruction, default is false
end
spec = Spec.first
hist = spec.history_tracks.first
#=> { id: 123, modified: {due_at: 2017-06-12}, ... }
hist.modified.class
#=> BSON::Document
我的问题是,我们如何通过qazxswpoi字段的存在来查询modified
字段?失败的尝试看起来像这样:
due_at
提前致谢!!
这应该工作:
spec.history_tracks.where(:'modified.due_at.exists' => true)