未关闭的GSP表达式:Grails GSP引擎不解析嵌套的GSP表达式

未关闭的GSP表达式:Grails GSP引擎不解析嵌套的GSP表达式,grails,groovy,gsp,Grails,Groovy,Gsp,我需要创建一个自定义gsp,其域模型设计如下 class Question { SortedSet<Choice> choiceCollection; static hasMany = [choiceCollection:Choice] static mappping = { choiceCollection(joinTable:false) } } 它涉及嵌套的GSP表达式 问题:我是否缺少一些功能?如果是这样的话,我应该做些

我需要创建一个自定义gsp,其域模型设计如下

class Question {

    SortedSet<Choice> choiceCollection;

    static hasMany = [choiceCollection:Choice]
    static mappping = {
        choiceCollection(joinTable:false)
    }

}
它涉及嵌套的GSP表达式

问题:我是否缺少一些功能?如果是这样的话,我应该做些什么来克服我的障碍

Grails版本:2.1.1不应该

${questionInstance?.choiceCollection[${i}]?.description}


设置位:

尝试以下方法:

<g:each var="choice" status="i" in="${questionInstance?.choiceCollection}">

因此,
i
仍然包含您的索引,但是
choice
包含您试图通过
questionInstance?获取的内容。choiceCollection[${i}]
不应该这样做

${questionInstance?.choiceCollection[${i}]?.description}


设置位:

尝试以下方法:

<g:each var="choice" status="i" in="${questionInstance?.choiceCollection}">


因此,
i
仍然包含您的索引,但是
choice
包含您试图通过
questionInstance?获取的内容。choiceCollection[${i}]

谢谢(+1)。现在,在使用TreeSet初始化SortedSet之后,我没有得到方法的签名:java.util.TreeSet.getAt()适用于参数类型:(java.lang.Integer)?你知道为什么吗?我应该怎么做才能运行我的应用程序?是的,您不能从集合中获取位置元素,甚至不能从SortedSet中获取:-(您可能希望从集合到列表,或者将项目保留在列表中,然后使用
List.unique().sort())
来模拟您从
树集获得的功能。或者您可以使用
每个
来迭代集合,而不是尝试使用整数索引,即:
([1,2,3]作为树集)。每个{println it}
@arthurronaldgarcia添加了一点关于替换
每个
的内容,谢谢(+1).现在,在用树集初始化我的SortedSet之后,我没有得到方法的签名:java.util.TreeSet.getAt()适用于参数类型:(java.lang.Integer)?你知道为什么吗?我应该怎么做才能运行我的应用程序?是的,你不能从集合中获取位置元素,即使是一个SortedSet:-(您可能希望从集合转到列表,或将项目保留在列表中,并使用
List.unique().sort()
模拟从
树集
获得的功能。或者您可以使用
每个
迭代集合,而不是尝试使用整数索引,即:
([1,2,3]作为树集)。每个{println it}
@arthurronaldfarcia添加了一点关于替换每个
<g:each var="choice" status="i" in="${questionInstance?.choiceCollection}">