我有一个媒体域
def Media {
String name
static belongsTo = [parent:Media]
static hasMany = [children:Media]
}
在 show.gsp 页面中,我想将我所有的根媒体(没有父级)列出到一个 ul 列表中,并在另一个 ul 列表中递归地列出他们的孩子和他们的孩子。我在第一个列表中使用了标签,但我不知道如何递归地为孩子们做这件事。
那么你知道如何做到这一点吗?
谢谢。
您可以将递归部分放入 GSP 模板中,然后递归调用它,例如:
index.gsp
:假设rootMedias
被传递到视图中
<g:each in="${rootMedias}" var="media">
<g:render template="step" model="${[media: media]}" />
</g:each>
_step.gsp
<ul>
<g:each in="${media.children}" var="child">
<li>
${child.name}
<g:render template="step" model="${[media: child]}" />
</li>
</g:each>
</ul>