【发布时间】:2014-12-28 21:56:58
【问题描述】:
我是 elasticseach 的新手,在向我的查询添加过滤器时遇到了一些问题。
我的域类是这样的:
Class A {
String name
A_Status status
static searchable = {
status component: true
}
}
Class AImpl extends A {
}
Class A_Status {
String name
static searchable = {
root : false
only = 'name'
}
}
在我的控制器上,我正在做的查询是:
def res = elasticSearchService.search()
{
bool {
must {
term("status.name": "ACTIVE")
}
}
}
我尝试将searchable 字段更改为AImpl 或输入"searchable = true",但结果相同,查询始终为空,应该得到4 个结果。
我发现的另一件奇怪的事情是,进行 uri 搜索给了我预期的结果,但正文查询没有。
curl -XGET 'http://localhost:9200/com.sisconline.entities/_search?q=status.name=ACTIVE'
这有 4 次点击。
curl -XPOST 'http://localhost:9200/com.sisconline.entities/_search' -d '{
"query" : {
"term":{ "status.name":"ACTIVE"}
}
}'
这获得 0 次点击。
我正在使用Grails 2.3.4 和elasticsearch plugin 0.0.3.5。
问候。
【问题讨论】:
标签: grails elasticsearch grails-orm elasticsearch-plugin