changeset 11:f7fe88804cb8

Merge with 896bea4f61a00f3771c92a66fe55af7826974fa7
author dwinter
date Thu, 27 Jun 2013 08:29:20 +0200
parents 74a9661e4e9f (diff) 896bea4f61a0 (current diff)
children 2e2da6d5e30d
files zopeSolr.py
diffstat 1 files changed, 8 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/zopeSolr.py	Wed Jun 19 17:16:05 2013 +0200
+++ b/zopeSolr.py	Thu Jun 27 08:29:20 2013 +0200
@@ -250,7 +250,7 @@
     #dokumentiert. Highlighting selbst wird in sorlconfig.xml konfiguriert.
     #return ein Queryobjet, zur eigentlichen Suche muss darauf noch execute ausgeführt werden.
  
-    def prepareSearch(self,solrQuery,facetFields=[],start=0,rows=10,facetSearch=None,sortFacets=True,orSearch=None):
+    def prepareSearch(self,solrQuery,facetFields=[],start=0,rows=10,facetSearch=None,sortFacets=True,orSearch=None,sorting=None):
         "search solr"
       
        
@@ -440,6 +440,10 @@
             
             res=res.paginate(start=start, rows=rows).highlight(usePhraseHighlighter=True)
           
+          
+        if sorting is not None:
+            for sort in sorting:
+                res=res.sort_by(sort);
         return res
     
     
@@ -464,7 +468,7 @@
     #erzeugt eine Suchabfrage und führt diese aus.
     #return {"result":response.result, "hl":response.highlighting,"facetFields":facetedFields}   
 
-    def search(self,solrQuery,facetFields=[],start=0,rows=10,facetSearch=None,sortFacets=True,orSearch=None,facetFields_limit=None,trunc=False):
+    def search(self,solrQuery,facetFields=[],start=0,rows=10,facetSearch=None,sortFacets=True,orSearch=None,facetFields_limit=None,trunc=False,sorting=None):
       
       
         print trunc
@@ -472,7 +476,7 @@
             if not solrQuery.endswith("*"):
                 solrQuery+="*"
       
-        res=self.prepareSearch(solrQuery,facetFields,start,rows,facetSearch,sortFacets,orSearch=orSearch)
+        res=self.prepareSearch(solrQuery,facetFields,start,rows,facetSearch,sortFacets,orSearch=orSearch,sorting=sorting)
         #response= res.execute()
         
         opt = res.options();
@@ -505,7 +509,7 @@
         
      
      
-    #hilfsmethode zum sortieren über der ranges
+    #hilfsmethode zum <eren über der ranges
     def sortRanges(self,ranges):
         x=list(ranges)
         x.sort()