我有 3 个具有这些关系的域:
A hasMany [bs: B] B 属于 [c: C] C
在 webflow 中,我这样做(简化版):
flow.a = new A(stuff:stuff)
flow.a.addToBs(new B(c:C.get(1)))
flow.a.addToBs(new B(c:C.get(2)))
flow.a.addToBs(new B(c:C.get(3)))
然后我尝试在 gsp 页面上显示所有这些信息:
<g:each in="${a.bs}" var="b">
${b.c.someProperty}
</g:each>
这就是我得到的地方LazyInitializationException
。我想我理解为什么(webflow 序列化flow
范围)但是当我尝试它们的attach()
所有实例C
都没有附加时:
flow.a.bs.each {
it.c.isAttached() // returns false
it.c.attach()
it.c.isAttached() // returns false
}
为什么是这样?我看不到任何错误消息......有没有更好的方法来做到这一点(我正在考虑lazy:false
为这些关系设置)?