Frage

Ich habe diese Felder in einer Sammlung:

[{
     u'_id': ObjectId('4d1f7b4d5d256b18c8000000'),
     u'name': u'1'
 },{
     u'_id': ObjectId('4d1f7b505d256b18c8000001'),
     u'name': u'2'
 },{
     u'_id': ObjectId('4d1f7b525d256b18c8000002'),
     u'name': u'3'
 }]

Dann mache ich eine solche Frage:

 [x for x in c.things.find( {'$or' : [{'name':'1'}, {'name':'2'}] } )]

Und ich erwarte zu bekommen:

[{
    u'_id': ObjectId('4d1f7b4d5d256b18c8000000'),
    u'name': u'1'
}, {
    u'_id': ObjectId('4d1f7b505d256b18c8000001'),
    u'name': u'2'
}]

Leider nicht. Was mache ich falsch?

War es hilfreich?

Lösung

Ich habe MongoDB aus dem Ubuntu -Repository verwendet, das älter als 1.5.3 ist (die Dokumentation von MongoDB besagt, dass $ oder ab 1.5.3 verfügbar ist). Nachdem ich zu der neuesten Veröffentlichung (1.6.5) geändert wurde, funktioniert alles wie erwartet.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top