0
私は以下のドメインクラスを持っており、グループ名で始まるすべてのグループを検索したい場合(グループ名を入力した場合)、groupStringsグループ文字列が入力されている):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 + '%')
}
}
グループ文字列を検索しようとすると、これらの両方でエラーが発生します。正しい構文は何ですか?