【发布时间】:2014-09-09 11:59:34
【问题描述】:
我的域类是
class RoomWantedAd{
Set<MateAgeRange> mateAgeRanges
static hasMany=[mateAgeRanges :MateAgeRange]
}
她的伴侣年龄范围是:
enum MateAgeRange {
TWENTIES('18-29')
,THIRTIES('30-39')
,FOURTIES("40-49")
,FIFTIES("50-59")
,SIXTIES("60+")
final String value
private MateAgeRange(String value) {
this.value = value
}
String toString() { value }
String getKey() { name() }
static belongsTo=[roomWanted:RoomWanted]
}
我的问题是搜索。在搜索页面中,一个人可以在 [18-29, 30-39, 40-49, 50-59, 60+] 中选择 0 个或多个值。在数据库中,[18-29, 30-39, 40-49, 50-59, 60+] 中的 0 个或多个值存储在字段“mateAgeRanges”中。 让 db 在 'mateAgeRange' 字段中包含 [30-39, 50-59]。让在搜索页面中,用户选择 [18-29, 50-59, 60+]。那么必须返回上面列表对应的Ad。这是因为用户选择中的至少一个值存在于 db 列表中。这怎么可能。是否可以使用 SQL 查询或 grails GORM 查询。
【问题讨论】:
标签: grails model enums querying