Grails ElasticSearch映射继承的域类

时间:2014-08-31 07:49:08

标签: grails elasticsearch searchable

假设我们有三个Grails域类,如下所示:

class Person { 
  String name
  static searchable = true 
}

class Boss extends Person { }

class Employee extends Person { }

然后我们创建/持久化一个Boss和一个Employee实例:

def myBoss = new Boss(name:"Boss")
myBoss.save()
def myEmployee = new Employee(name:"Employee")
myEmployee.save()

默认情况下,ElasticSearch插件似乎会将这些实例编入类型为BossEmployee的索引,而不是类型Person

鉴于只有一个继承的字段可以搜索,有没有办法将ElasticSearch映射更改为Person而不是BossEmployee(不使用低级API)?

这样我们就可以使用一个查询按名称搜索所有Persons,而不是BossEmployee上的两个单独查询。

0 个答案:

没有答案