如何强制findAllBy在Grails中返回单个结果的数组?

时间:2012-07-31 23:36:53

标签: hibernate grails

在我的代码中的几个地方我使用def results = Domain.findAllBySomething查询数据库,我期待一个数组(我使用results.size()来确定我有多少结果)。 但是,如果findAll调用导致返回单个对象,则不会将其作为数组返回,而是返回对此单个对象的引用。

有什么方法可以强制grails始终返回数组,无论有多少结果?

我正在使用2.1。

1 个答案:

答案 0 :(得分:2)

findAll*应该总是返回一个Collection - 我在2.1中尝试了以下代码:

def person = Person.findAllByName('kelly')
println person.size()
println person.class
println person[0].name

打印

1
class java.util.ArrayList
kelly

你能添加一些显示它返回单个实例的代码吗?