1

以下是一些域类及其关系:

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搜索旅行:numberOfSeatsBus

def results = Trip.search {
    must(term('numberOfSeats', params.numberOfSeats))
}

根据我在文档和网上看到的内容,Bus(或者Vehicle,不确定,因为Busextends 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,所有结果都是类的BusTrip我猜这不是我为什么Trip.search { ... }不起作用的原因)。

所以,经过长时间的解释......有人知道如何static searchable = ...在我的域类中进行组织以便能够Trip.search { ... }使用numberOfSeats吗?

4

0 回答 0