Как структурировать мои страницы и частичные шаблоны, чтобы Ajax поиграл с <paginate>
и сортировкой столбцов?Grails: проблема с поисковым вызовом и упорядочением в шаблоне просмотра
В настоящее время у меня есть страница search.gsp с remoteField, которая вызывает контроллер для обновления шаблона. Все это прекрасно работает. Тем не менее, операции сортировки столбцов и пейджинга приводят к тому, что мой поиск.gsp полностью заменяется представлением шаблона.
С моей search.gsp:
<div id="searchBox">
Enter a key or phrase: <g:remoteField name="searchBox"
update="resourceSearchResultPanel" paramName="q"
url="[controller:'resourceEntry',action:'searchForResources']"
/>
</div>
<div id="resourceSearchResultPanel" />
Мой контроллер обрабатывает запрос поиска следующим образом:
def searchForResources = {
params.max = Math.min(params.max ? params.max.toInteger() : 10, 100)
params.offset = params.offset ? params.offset.toInteger() : 0
log.debug "Handling search post action"
def q = params.q ?: null
log.debug "Search phrase is $q"
def searchResults
if (q) {
searchResults = [
results: ResourceEntry.search(q,[offset: params.offset, max: params.max]),
resultCount: ResourceEntry.countHits(q),
q: q.encodeAsHTML()
]
}
render(template:"resourceSearchResultPanel",model:searchResults)
}
_resourceSearchResultPanel.gsp просто таблица с этим <paginate>
тег:
<g:paginate action="searchForResources" total="${resultCount}" params='["q":"${q}"]' />
Проблема заключается в том, что, когда тег <paginate>
вызывает cont ролик, вся страница обновляется содержимым шаблона _resourceSearchResultPanel.gsp, а я просто хочу, чтобы сам _resourceSearchResultPanel.gsp обновлялся внутри search.gsp.
Там нет update
атрибута, как есть в remoteField
теге ...
Могу ли я попытаться написать свой собственный, или я должен использовать другую таблицу данных? –
Спасибо за направление. Быстрый поиск Google для «paginate remoteLink» привел меня к тому, кто выполнил именно это: http://tdsystemsgroup.com/resources.html –