我有以下域对象:
class Foo {
List<Bar> bars
static hasMany = [bars: Bars]
static mapWith = 'mongo'
}
class Bar {
Foo foo
static belongsTo = [foo: Foo]
static mapWith = 'mongo'
}
服务中的以下代码:
Bar bar1 = new Bar('bar1')
Bar bar2 = new Bar('bar2')
Bar bar3 = new Bar('bar3')
foo.addToBars(bar1)
foo.addToBars(bar2)
foo.addToBars(bar3)
foo.save
控制器中的以下代码:
def foo = Foo.findAll()
def bars = foo.bars
为什么条形是嵌套数组?
我得到类似的东西:[['bar1','bar2','bar3']] 我期待像['bar1','bar2','bar3']
这样的东西更多信息:
答案 0 :(得分:0)
问题是我在findAll返回的对象上做.bars。我将它改为findOne(),一切都按预期工作。
解决方案:
def foo = Foo.findOne() // was: def foo = Foo.findAll()
def bars = foo.bars