36 |
36 |
37 class LdtSearch(object): |
37 class LdtSearch(object): |
38 |
38 |
39 def query(self, field, query): |
39 def query(self, field, query): |
40 indexSearcher = get_searcher() |
40 indexSearcher = get_searcher() |
41 queryParser = get_query_parser() |
41 queryParser = get_query_parser(field) |
42 queryObj = queryParser.parse(query) |
42 queryObj = queryParser.parse(query) |
43 hits = indexSearcher.search(queryObj, settings.LDT_MAX_SEARCH_NUMBER) |
43 hits = indexSearcher.search(queryObj, settings.LDT_MAX_SEARCH_NUMBER) |
44 |
44 |
45 res = [] |
45 res = [] |
46 for hit in hits.scoreDocs: |
46 for hit in hits.scoreDocs: |
47 doc = indexSearcher.doc(hit.doc) |
47 doc = indexSearcher.doc(hit.doc) |
48 res.append({"iri_id":doc.get("iri_id"), "ensemble_id":doc.get("ensemble_id"), "decoupage_id":doc.get("decoupage_id"), "element_id":doc.get("element_id")}) |
48 res.append({"iri_id":doc.get("iri_id"), "ensemble_id":doc.get("ensemble_id"), "decoupage_id":doc.get("decoupage_id"), "element_id":doc.get("element_id"), "project_id":doc.get("project_id")}) |
49 indexSearcher.close() |
49 indexSearcher.close() |
50 return res |
50 return res |
51 |
51 |
52 def queryAll(self, query): |
52 def queryAll(self, query): |
53 return self.query("all", query) |
53 return self.query("all", query) |