Russell Keith-Magee wrote: > On 10/11/06, Gábor Farkas <[EMAIL PROTECTED]> wrote: >> Russell Keith-Magee wrote: > >> sorry, but is this the description of the __iter__ case, or the >> iterator() case? > > Now that you mention it.... (looks furiously at code...) > > Ok - it doesn't work quite like I thought it did. Here's the rundown > of what actually happens: > > iterator() on the Manager (Article.objects.iterator()) is a shortcut > for Article.objects.all().iterator(). > > __iter__() on the QuerySet returns an iterator over the cached query > results. If the cache isn't filled, a call to iterator() is made to > populate the cache. > > iterator() on the QuerySet is the heavy lifting method - it is a > non-cached execution of a query. > > The confusion on my end is that I don't think I've ever called > iterator() explicity - I just use the iterator protocol. Sorry if I > lead anyone astray.
hmm... but if you have never called iterator explicitly, that means you were always "read-all-results-in + use-cache", correct? (i'm not sure i understand what you mean by "iterator protocol") thanks, gabor --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-developers -~----------~----~----~----~------~----~------~--~---
