0

我得到了我的学生课程列表,学生有他自己的课程列表。通过 Hibernate Criteria API,我按姓名选择了学生,加入了课程,所以我的结构如下:

Student ID=1, Courses.size=2
Student ID=1, Courses.size=2
Student ID=2, Courses.size=1
Student ID=3, Courses.size=2
Student ID=3, Courses.size=2

学生重复他的课程的大小。这就是我想做的。但是我在我的 Primefaces 数据表中显示它有问题。

<p:dataTable var="student" rowIndexVar="row" selectionMode="single"  paginator="true" value="#{studentsMB.students}" lazy="true"  rows="30">

<p:column id="tematpl" headerText="Temat pracy dyplomowej">  
    <h:outputText value="#{student.name}" /> 
</p:column> 

<p:column headerText="Test">                                
    <h:outputText value="#{student.courses[???].name} " />  
 </p:column> 

</p:dataTable>

如何在“???”中包含变量 地方,所以我可以显示每门课程的名称?

4

1 回答 1

1

从 UI 的角度来看,使用 primefaces子表行扩展会更好

对于行扩展,一个简单的结构是

<p:dataTable var="student" rowIndexVar="row" selectionMode="single"  paginator="true" value="#{studentsMB.students}" lazy="true"  rows="30">

    <p:column style="width:2%">  
        <p:rowToggler />  
    </p:column>  

    <p:column id="tematpl" headerText="Temat pracy dyplomowej">  
        <h:outputText value="#{student.name}" /> 
    </p:column>  

    <p:rowExpansion>
        <p:datatable value="#{student.courses}"  var="course"
            <p:column  headerText="Course name">  
                <h:outputText value="#{course.name}" /> 
            </p:column>  
        </p:datatable>           
    </p:rowExpansion>  
</p:dataTable>  
于 2013-03-08T12:44:58.100 回答