以下是一些域类及其关系:
class Vehicle {
Integer hireRatePerHour
}
class Bus extends Vehicle {
Integer numberOfSeats
}
class Truck extends Vehicle {
Integer maxLoad
}
class Trip {
String origin
String destination
static belongsTo = [vehicle: Vehicle]
}
我希望能够设置searchable
,以便我可以根据numberOfSeats
类的Bus
属性搜索行程:
def results = Trip.search {
must(term('numberOfSeats', params.numberOfSeats))
}
根据我在文档和网络上看到的内容,Bus
(或Vehicle
,不确定因为Bus
扩展Vehicle
)应设置为component
。所以这就是我所拥有的(就searchable
配置而言):
class Trip {
static searchable = {
vehicle component: true
}
}
class Bus {
static searchable = true
}
class Truck {
static searchable = true
}
class Vehicle {
static searchable = true
}
但是,results
始终是一个空列表。我使用Luke(http://code.google.com/p/luke/)对numberOfSeats
进行搜索,所有搜索结果都属于Bus
类(而不是Trip
,我想这就是为什么我Trip.search { ... }
1}}不起作用。)
所以,经过长时间的解释......有没有人知道如何在我的域类中static searchable = ...
进行整理,以便能够Trip.search { ... }
使用numberOfSeats
?