search
Purpose
Search through an index for the specified search query. The returned result only contains hits for the correponding domain.Only domains that are root-mapped have this method injected.
Examples
def highlighter = { field 'message', 0, 0 preTags '<strong>' postTags '</strong>' }def res = MyDomain.search("${params.query}") def res = MyDomain.search("${params.query}", [from:0, size:30, highlighter:highlighter]) def res = MyDomain.search(){ queryString("${params.query}") } def res = MyDomain.search(from:0, size:30) { queryString("${params.query}") }
Description
search
signature:def search(Closure query, Map params)
def search(Map params, Closure query)
def search(String query, Map params)
Parameters
query
- The search query. You may use one or more terms to look for, or use the Lucene syntax for advanced searching.params
- A list of additional parameters to customize the searching processfrom
andsize
- From (hit) and the size (number of hits) to return.sort
- Sort based on different fields including ElasticSearch's internal ones (like_score
)highlighter
- AClosure
containing the highlighting settings.
Returned value
Return aMap
containing:
- a
total
entry, representing the total number of hits found - a
searchResults
entry, containing the hits - a
scores
entry, containing the hits' scores. - a
highlight
entry if thehighlighter
parameter was set.