In a context where you need to obtain the whole list the Martijn solutions sounds better in my ears because the Andreas one do more times the bottleneck In a context where you will complete the list as soon as you need (as Zope Smart Manager) the Andreas one sounds better Only my point of view ;) 2008/10/21 Andreas Jung <lists@zopyx.com>
On 21.10.2008 18:25 Uhr, Martijn Pieters wrote:
On Tue, Oct 21, 2008 at 18:10, Andreas Jung<lists@zopyx.com> wrote:
You have to split the complete processing over several EPI queries where a single query returns all elements with level=1 for a particular subfolder. You can sort_on='position' within each query. And paste the results in some way together. Nobody said that EPI would solve the problem out-of-the-box :-)
Right, so with sufficient levels you end up with a *lot* of queries.
Why not just query for the whole lot and use one method that returns a (path, position) tuple for a given item, and pass that to the sort function as the key keyword? Should be a lot better performing.
If this would be a programming contest then you would cache the results and don't care about the performance for the initial calculation.
Andreas
_______________________________________________ Zope maillist - Zope@zope.org http://mail.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope-dev )
-- Mis Cosas http://blogs.sistes.net/Garito Zope Smart Manager http://blogs.sistes.net/Garito/670