changeset 5:f695be8f4f34

Incomplete - # 77: Sources: Cloud https://it-dev.mpiwg-berlin.mpg.de/tracs/webpage/ticket/77 added facetFields_limit to search parameters
author dwinter
date Tue, 28 May 2013 11:13:40 +0200
parents 10733d367831
children c97b5cbcda52
files zopeSolr.py
diffstat 1 files changed, 9 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/zopeSolr.py	Fri Apr 26 17:52:24 2013 +0200
+++ b/zopeSolr.py	Tue May 28 11:13:40 2013 +0200
@@ -224,7 +224,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,facetFields_limit=None):
         "search solr"
       
        
@@ -394,7 +394,12 @@
             #for facet in facetFields:
             
             #    res = res.facet_by(facet)
-            res = res.facet_by(facetFields)
+          
+          
+            if facetFields_limit:
+                res = res.facet_by(facetFields,limit=facetFields_limit)
+            else:
+                res = res.facet_by(facetFields)
                 
         #res=res.paginate(start=start, rows=rows).highlight("main_content")
         
@@ -434,9 +439,9 @@
     #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):
+    def search(self,solrQuery,facetFields=[],start=0,rows=10,facetSearch=None,sortFacets=True,orSearch=None,facetFields_limit=None):
       
-        res=self.prepareSearch(solrQuery,facetFields,start,rows,facetSearch,sortFacets,orSearch=orSearch)
+        res=self.prepareSearch(solrQuery,facetFields,start,rows,facetSearch,sortFacets,orSearch=orSearch,facetFields_limit=facetFields_limit)
         response= res.execute()
             
             #speichere faceted fields