title: Mongoengine chaining filter() and ReferenceField() causes "TypeError: 'Collection' object is not callable"
body: <p>Having these 2 MongoEngine Documents:</p>
  
  <pre><code>class A(Document):
      a = StringField()
  
  class B(Document):
      b = StringField()
      boolfield = BooleanField(default=False)
      ref = ReferenceField(A)
  </code></pre>
  
  <p>I'd like first to <code>filter()</code> on a specific A object, and then, from the first query, <code>filter()</code> on the BooleanField. But these lines cause an error:</p>
  
  <pre><code>a_objects = A.objects(a='test') # OK
  query = B.objects(ref__in=a_objects) # OK
  query2 = query.filter(boolfield=True) # FAILS
  </code></pre>
  
  <p>The error is:</p>
  
  <pre><code>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.
  </code></pre>
  
  <p>See the full code and traceback here: <a href="https://gist.github.com/nferrari/4962245" rel="nofollow">https://gist.github.com/nferrari/4962245</a></p>
  
  <p>Thanks!</p>