0
我有以下的域類,並希望找到以組名稱開頭的所有組(如果輸入組名稱)幷包含groupStrings之一(if輸入一組字符串):Grails 3 - 使用標準來查找字符串列表中的字符串
class Group {
String name
List groupStrings
static hasMany = [
groupStrings : String
]
}
我想:
String groupNameToFind = ...
String groupStringToFind = ...
List<Long> groupIds = Group.createCriteria().listDistinct() {
projections {
property 'id'
}
if(groupNameToFind) {
ilike('name', groupNameToFind + '%')
}
if(groupStringToFind) {
eq('groupStrings', groupStringToFind)
}
}
我也試過:
List<Long> groupIds = Group.createCriteria().listDistinct() {
projections {
property 'id'
}
if(groupStringToFind) {
createAlias('groupStrings', 'gs', JoinType.LEFT_OUTER_JOIN)
eq('gs', groupStringToFind)
}
if(groupNameToFind) {
ilike('name', groupNameToFind + '%')
}
}
這兩個都在嘗試查找組字符串時產生錯誤。什麼是正確的語法?