我有一个带有开始和结束日期的ZODB目录查询。我想先在end_date上对结果进行排序,然后在start_date中对结果进行排序。
对end_date或start_date进行排序工作正常。
我尝试了一个元组(start_date,end_date
),但没有运气。
有没有办法实现这一点,或者之后必须使用一些自定义逻辑?
答案 0 :(得分:3)
广义的答案应该是事后 - 整个目录大脑的整个结果集,使用zope.sequencesort(通过PyPI,但已经与Plone一起提供)或类似的。
更复杂的答案是优化的兔子洞,如果你知道自己需要知道自己在做什么,那么你应该只做下去:
除非您正在处理特别大的结果集,否则不要进行优化。
不言而喻:如果你做了优化,你需要验证你实际上是在获得更好的结果(配置文件和基准)。如果你不能证明投入时间来证明这一点,你就无法证明优化的合理性。