2016-03-22 22 views
0

Gerekli olmayan iç içe geçmiş verileri filtrelememe yardımcı olmak için aşağıdaki kapsamı (modelimde) tanımladım. Bunu çalıştırdığınızdaİç içe geçmiş öznitelikleri ruby ​​mongoid gem ile filtrele

scope :active_inactive, -> { self.in({ 
     state: ["current"], 
     "events.type" => [ 
     :active, 
     :inactive, 
     ] 
    }).desc(:created_at) 
    } 

Ben sonuçlarının bu kapsam içermemesi gerektiğini "IN_PROGRESS" gibi diğer olayları içeriyor vardır olsun.

cevap

1

Ben kodunuzu Neredeyse

scope :active_inactive, -> { 
    self.where(:state.in => ["current"], :"events.type".in =>["active","inactive"]}).desc(:created_at) 
} 
+0

içine yeniden yazılması gerektiğini düşünüyorum @vitali –

İlgili konular