2 Le fait que ces documents MongoEngine:Mongoengine filtre enchaînant() et ReferenceField() provoque "TypeError: objet 'Collection' est pas appelable"
class A(Document):
a = StringField()
class B(Document):
b = StringField()
boolfield = BooleanField(default=False)
ref = ReferenceField(A)
Je voudrais d'abord filter()
sur un objet spécifique, puis, à partir de la première requête, filter()
sur le BooleanField. Mais ces lignes provoquent une erreur:
a_objects = A.objects(a='test') # OK
query = B.objects(ref__in=a_objects) # OK
query2 = query.filter(boolfield=True) # FAILS
L'erreur est:
TypeError: 'Collection' object is not callable. If you meant to call the '__deepcopy__' method on a 'Collection' object it is failing because no such method exists.
Voir le code complet et retraçage ici: https://gist.github.com/nferrari/4962245
Merci!
Quelle version de Mongoengine et pymongo? – Ross
mongoengine 0.7.8, pymongo 2.4.2 –