具有扩展域类的可搜索插件

时间:2012-10-05 05:54:12

标签: hibernate grails groovy lucene gorm

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

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

0 个答案:

没有答案