MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Dokumente mit Element im Array-Feld mit Mongomapper finden?

In den aktuellen Versionen von MongoMapper funktioniert dies:

MessageThread.where(:partecipant_ids => 15)

Und das sollte auch funktionieren...

MessageThread.where(:partecipant_ids => [15])

...denn plucky erweitert das automatisch zu:

MessageThread.where(:partecipant_ids => { :$in => [15] })

(siehe https://github.com/jnunemaker /plucky/blob/master/lib/plucky/criteria_hash.rb#L121 )

Ich würde sagen, sehen Sie sich Ihre Daten an und probieren Sie Abfragen in der Mongo-Konsole aus, um sicherzustellen, dass Sie eine funktionierende Abfrage haben. MongoDB-Abfragen werden mit Ausnahme der oben genannten (und einiger anderer kleinerer) Einschränkungen direkt in MM-Abfragen übersetzt. Siehe http://www.mongodb.org/display/DOCS/Querying