8

次の dict オブジェクトがあるとします。

{
    "a": "value of a",
    "somedict": {
        "someinfo": [
            {
                "name": "Jordan",
                "food": [
                    "fries",
                    "coke",
                    "drink"
                ]
            }
        ]
    }
}

mongoengine を使用して Python でクエリ フィルターを適用したい場合、どうすればよいでしょうか? 次のようなことができるドキュメントを参照してください。

sample_objs_filter = Sample.objects(a='value of a')

しかし、どのようにフィルタリングしますか

1) "name='Jordan'" 
2)'food' contains 'fries'?

mongoengine がそれを行うことができない場合、これを達成するのに優れた他の mongo ライブラリはありますか?

4

2 に答える 2

14

オブジェクトをクエリ/検索して一致するドキュメントを返す方法について、mongodb のドット表記について詳しく読むことをお勧めします。

ドットをキーワード引数として使用できないため、mongoengineは二重アンダースコアの django orm スタイルに従います。

1) Sample.objects(somedict__someinfo__name='Jordan')
2) Sample.objects(somedict__someinfo__food='Fries')
于 2012-08-13T10:45:09.233 に答える