Thanks for the help so far guys, I've used that recipe suggested by
Malcolm, where by I pass a number of querysets into the method. It
works as expected I guess, BUT, I would like to be able to sort by the
datetime field from each queryset, however the fieldnames for each of
the date time fields from each queryset are different. Is there a way
around this, should I actually be looking at a custom sql query?

On Apr 11, 12:55 am, Alex Gaynor <alex.gay...@gmail.com> wrote:
> On Fri, Apr 10, 2009 at 7:52 PM, Malcolm Tredinnick <
>
>
>
> malc...@pointy-stick.com> wrote:
>
> > On Fri, 2009-04-10 at 19:44 -0400, Alex Gaynor wrote:
>
> > > On Fri, Apr 10, 2009 at 7:40 PM, Malcolm Tredinnick
> > > <malc...@pointy-stick.com> wrote:
> > [...]
>
> > >         Particularly with iterators, storing the (next head item, rest
> > >         of
> > >         iterator) pair in a heap leads to a very neat and fast way to
> > >         create a
> > >         combined iterator. Here's one professional-quality
> > >         implementation that I
> > >         would recommend:http://code.activestate.com/recipes/491285/
>
> > > It has one unfortunate failing(which is the fault of the heapq
> > > library), it doesn't take a key/cmp function like sorted does.  It is
> > > otherwise completely excellent though.
>
> > It's Python and so is the heap module! Modifying things is easy. I've
> > used the same solution with custom comparison functions one a number of
> > occasions. Even writing a small heap implementaiton with a custom
> > comparison is only about two dozen lines. Come on, think a little bit
> > outside the box!
>
> I'm not!  A heap sort is a great solution to this problem(but you already
> knew that), it's just that the implementation in the python stdlib doesn't
> work perfectly for this usecase(indeed I filed a ticket about this upsteam
> several months ago, for reference it was rejected).  I did the same thing
> you suggested for a blog post on this topic a number of months ago, however
> it wasn't nearly as optimial as this(I believe you even commented to that
> effect on the post).
>
>
>
> > Regards,
> > Malcolm
>
> Alex
>
> --
> "I disapprove of what you say, but I will defend to the death your right to
> say it." --Voltaire
> "The people's good is the highest law."--Cicero
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to