Mercurial > hg > zopeSolr
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()