2011-07-04 11 views
9

gram około z MongoEngine a ja po prostu nie może znaleźć drogę odpytuje ReferenceFieldsodpytywanie ReferenceFields z MongoEngine

Class Foo(Document) 
    bar = ReferenceField(Bar) 
    ... 

Class Bar(Document) 
    value =IntField() 
    ... 

bars = Bar.objects.filter(value__lt=1000) 

Django:

foos = Foo.objects.filter(bar__in=bars) 

MongoEngine:

Czy istnieje sposób, aby to osiągnąć?

Dzięki z góry,

Odpowiedz

0

Jeśli używasz odwołać nie może zapytać o przywoływanych pól obiektu. Ponieważ odwołania wykonywane wewnętrznie w sterowniku i większości sterowników zapisują referencyjny identyfikator dokumentu, nazwę kolekcji i nazwę bazy danych (dzięki czemu można zapytać tylko o identyfikator dokumentu referencyjnego).

Chcesz otrzymać zapytanie? Użyj osadzania lub wykonaj dwa osobne zapytania.

+0

Chcę zrobić 2 oddzielne zapytania. To dlatego mam pierwsze zapytanie, które łapie przywoływane obiekty, a nie sekundę, która filtruje zawartość dokumentów, do których odwołują się te obiekty. –

+0

Ale nie mogę znaleźć sposobu na wykonanie drugiego zapytania. –

+0

@ PhilippeClémen: Czy możesz tutaj umieścić swoją strukturę dokumentów? –