Hibernate 为什么Grails没有返回I';我在找什么?
以下是我正在使用的域类:Hibernate 为什么Grails没有返回I';我在找什么?,hibernate,grails,criteria,Hibernate,Grails,Criteria,以下是我正在使用的域类: class Foo { String name, type static hasMany = [ bars: Bar ] List bars static mapping = { bars lazy:false } } class Bar { String value static belongsTo = Foo } 我编写了一些条件查询,以便为用户提供一个查询界面。
class Foo {
String name,
type
static hasMany = [ bars: Bar ]
List bars
static mapping = {
bars lazy:false
}
}
class Bar {
String value
static belongsTo = Foo
}
我编写了一些条件查询,以便为用户提供一个查询界面。该界面提供了一个下拉列表,以便为Bar选择特定值。当用户试图为Bar类指定一个值,并希望获取相关的FOO时,就会出现问题。以下是条件查询:
def query = {
and {
if (params.name && params.name != '') {
ilike('name', "%${params.name}%")
}
if (params.type && params.type != '') {
ilike('type', "%${params.type}%")
}
if (params.value && params.value != '') {
bars {
eq("value", params.value)
}
}
}
}
def results = Foo.createCriteria().list(params,query)
本质上,看起来发生的事情是,只有与指定值匹配的条才会与Foo对象一起返回,即使Foo对象有其他与该对象不匹配的条。我希望它返回所有的条,因为我正在查询具有匹配条的Foo
有什么想法吗?需要进一步澄清吗?根据您的查询,看起来不错
我在Foo
对象中看到了问题。尝试删除列表栏
。与Bar
的关系已经用static hasMany=[Bar:Bar]
定义
更新
我会先说。实施他们的榜样。然后尝试一步一步地将其更改为我的解决方案。您将看到问题所在。根据您的查询,问题看起来很好
我在Foo
对象中看到了问题。尝试删除列表栏
。与Bar
的关系已经用static hasMany=[Bar:Bar]
定义
更新
我会先说。实施他们的榜样。然后尝试一步一步地将其更改为我的解决方案。您将看到问题所在。我希望条形图是一个列表,而不是默认的java.util.Set。我希望条形图是一个列表,而不是默认的java.util.Set。