Maybe,  __nonzero__ can rewind the cursor. The main problem is performance. For example, if '''Test.objects''' is large (I tested a collection with 900k documents), a simple '''if cursor:''' will open all documents.