使用 ruby mongoid gem 过滤嵌套属性
Filter nested attributes with ruby mongoid gem
我定义了以下范围(在我的模型中)以帮助我过滤掉某些不需要的嵌套数据。
scope :active_inactive, -> { self.in({
state: ["current"],
"events.type" => [
:active,
:inactive,
]
}).desc(:created_at)
}
当我 运行 时,我得到的结果包含其他事件,例如此范围不应包含的 "in_progress"。
我觉得你的代码应该重写成
scope :active_inactive, -> {
self.where(:state.in => ["current"], :"events.type".in =>["active","inactive"]}).desc(:created_at)
}
我定义了以下范围(在我的模型中)以帮助我过滤掉某些不需要的嵌套数据。
scope :active_inactive, -> { self.in({
state: ["current"],
"events.type" => [
:active,
:inactive,
]
}).desc(:created_at)
}
当我 运行 时,我得到的结果包含其他事件,例如此范围不应包含的 "in_progress"。
我觉得你的代码应该重写成
scope :active_inactive, -> {
self.where(:state.in => ["current"], :"events.type".in =>["active","inactive"]}).desc(:created_at)
}