Я заинтересован в возвращении нескольких списков в представление, чтобы в конечном итоге отобразить строки информации из совершенно разных запросов на одной странице. Я понял, как сделать следующее:Есть ли лучший способ вернуться и отобразить несколько списков в виде в Grails?
Вот мое действие в мой контроллер:
def processMultipleLists()
{
def stirList = []
Person stirling = new Person('Stirling','Crow', 47)
Person lady = new Person('Lady','McShavers', 4)
stirList << stirling
stirList << lady
def kathieList = []
Person kathie = new Person('Kathie','Esquibel', 47)
Person milagro = new Person('Milagro','Muffin', 4)
Person meeko = new Person('Meeko','Muffin', 4)
kathieList << kathie
kathieList << milagro
kathieList << meeko
def returnThisMap = [:]
returnThisMap.put('One', kathieList)
returnThisMap.put('Two', stirList)
return [returnMap : returnThisMap]
}
Grails затем возвращает «returnMap» (который содержит «returnThisMap», о которых говорится ниже, как «mapNum») на мой взгляд, который имеет следующее:
<g:if test="${returnMap.size() > 0}">
<table border="1">
<tbody>
<g:each in="${returnMap}" status="i" var="mapNum">
<g:if test="${mapNum.getKey() == 'One'}">
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Favorite Number</th>
</tr>
<g:each in="${mapNum.getValue()}" status="c" var="listVar">
<tr>
<td>${listVar.firstName}</td>
<td>${listVar.lastName}</td>
<td>${listVar.favNumber}</td>
</tr>
</g:each>
</g:if>
<g:elseif test="${mapNum.getKey() == 'Two'}">
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Favorite Number</th>
</tr>
<g:each in="${mapNum.getValue()}" status="c" var="listVar">
<tr>
<td>${listVar.firstName}</td>
<td>${listVar.lastName}</td>
<td>${listVar.favNumber}</td>
</tr>
</g:each>
</g:elseif>
</g:each>
</tbody>
</table>
</g:if>
<g:else>
No records were found to display.
</g:else>
Это действительно работает. Он публикует информацию из обоих списков. Но ... он чувствует себя немного «взломанным», так как я должен использовать groovy tag для повторения значений ключа/пары в returnMap. Есть ли лучший способ отобразить несколько списков в Grails?
Perfect. Спасибо!! Это намного лучше, чем то, как я это делал. –