这是从表中选择数据并使用JSP标记库在HTML表中显示结果的通用方法。在Grails中执行此操作的一般方法是什么?也就是说,在Grails中使用几行SQL并从头开始生成HTML表,包括列名作为标题。
<sql:query var="results" dataSource="${dsource}"> select * from foo </sql:query> (# of rows: ${results.rowCount}) <table border="1"> <!-- column headers --> <tr bgcolor=cyan> <c:forEach var="columnName" items="${results.columnNames}"> <th><c:out value="${columnName}"/></th> </c:forEach> </tr> <!-- column data --> <c:forEach var="row" items="${results.rowsByIndex}"> <tr> <c:forEach var="column" items="${row}"> <td><c:out value="${column}"/></td> </c:forEach> </tr> </c:forEach> </table>
答案 0 :(得分:2)
这个问题可以改写为,我如何像一个天真的ASP.NET开发人员一样编写代码? (并非所有ASP.NET开发人员都天真,有些人可能非常好)
您还可以使用条件查询MyDomain.createCriteria() 然后,您可以将结果传递给taglib。
但所有这些似乎都违反了MVC原则。您的观点应该只是一个观点....
你问的问题真的不是grails应用程序的惯用语。我意识到它在微软世界中是常见的,执行一个查询,将它传递给数据网格......但是Grails没有直接的分析,可能是有充分理由的
答案 1 :(得分:0)
您可以按照描述使用taglib。你只需要让Grails知道它。