Grails嵌套标签

ufu*_*cuk 2 grails

我一直在互联网上搜索关于父/子关系的嵌套标签的文档,但到目前为止我什么也没得到.我想要学习的是,无论如何,这样的自定义"父"标签是否知道它的"孩子"

<mytag:parent source="${somelist}">
    <mytag:child column="name" style="padding-left:10px">
    </mytag>
    <mytag:child column="surname" style="padding-left:10px">
    </mytag>
</mytag>
Run Code Online (Sandbox Code Playgroud)

在此示例中,父标记获取集合,子节点分别通过调用somelist.name和打印它们的给定列somelist.surname.我是否必须解析DOM才能了解孩子,或者我可以用"groovy"代码以某种方式联系孩子吗?

Igo*_*nov 5

<mytag:parent>应该将自己的上下文/数据作为请求范围属性(或页面范围),处理它<mytag:child>,并在结束标记上删除它.喜欢:

static final CONTEXT = this.class.name

def parent = { attrs, body ->
    def data = [
        name: 'test 1',
        surname: 'test 2'  // i guess you want to load this values from attr.source
    ]
    request.setAttribute(CONTEXT, data)
    out << body.call()
    request.removeAttribute(CONTEXT)
}


def child = { attrs, body ->
   def data = request.getAttribute(CONTEXT)
   out << 'name: '
   out << data.name  
   out << 'surname: '
   out << data.surname  
}
Run Code Online (Sandbox Code Playgroud)