擁有這些2 MongoEngine文件:Mongoengine鏈濾波器()和ReferenceField()會導致「類型錯誤:‘集合’對象不是可調用」
class A(Document):
a = StringField()
class B(Document):
b = StringField()
boolfield = BooleanField(default=False)
ref = ReferenceField(A)
我想先filter()
特定目的上,然後從第一個查詢開始,BooleanField上的filter()
。但是,這些行會導致錯誤:
a_objects = A.objects(a='test') # OK
query = B.objects(ref__in=a_objects) # OK
query2 = query.filter(boolfield=True) # FAILS
的錯誤是:
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.
在這裏看到完整的代碼和追蹤:https://gist.github.com/nferrari/4962245
謝謝!
什麼版本的mongoengine和pymongo? – Ross 2013-02-15 19:48:15
mongoengine 0.7.8,pymongo 2.4.2 – 2013-02-15 20:37:28