我有3个具有这些关系的域名:
a hasMany [bs:B] B属于[c:C] ç
在网络流程中我这样做(简化版):
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
)?