WEB开发网
开发学院软件开发Java 精通 Grails: 了解插件 阅读

精通 Grails: 了解插件

 2009-10-26 00:00:00 来源:WEB开发网   
核心提示: 在 index.gsp 的第 100 行左右的位置,应该能够找到一个表单,精通 Grails: 了解插件(9),它可设置 q 参数及递归地将自身提交回 index 动作,清单 11 显示了这个表单: 清单 11. index.gsp 中的 searchable 表单<g:formurl=&

在 index.gsp 的第 100 行左右的位置,应该能够找到一个表单,它可设置 q 参数及递归地将自身提交回 index 动作。清单 11 显示了这个表单:


清单 11. index.gsp 中的 searchable 表单
<g:form url='[controller: "searchable", action: "index"]' 
    id="searchableForm" 
    name="searchableForm" 
    method="get"> 
 <g:textField name="q" value="${params.q}" size="50"/> 
 <input type="submit" value="Search" /> 
</g:form> 

回过头,再看看 清单 10,可以发现一旦 q 参数内有了一个搜索条件,searchableService.search() 调用的结果就会被返回给 index.gsp。在 index.gsp 中的第 150 行左右,会显示这些结果,如清单 12 所示:


清单 12. 显示搜索结果
<g:if test="${haveResults}"> 
 <div class="results"> 
  <g:each var="result" in="${searchResult.results}" status="index"> 
   <div class="result"> 
    <g:set var="className" value="${ClassUtils.getShortName(result.getClass())}" /> 
    <g:set var="link" 
        value="${createLink(controller: className[0].toLowerCase() + 
         className[1..-1], 
        action: 'show', 
        id: result.id)}" /> 
    <div class="name"><a href="${link}">${className} #${result.id}</a></div> 
    <g:set var="desc" value="${result.toString()}" /> 
    <g:if test="${desc.size() > 120}"> 
     <g:set var="desc" value="${desc[0..120] + '...'}" /> 
    </g:if> 
    <div class="desc">${desc.encodeAsHTML()}</div> 
    <div class="displayLink">${link}</div> 
   </div> 
  </g:each> 
 </div> 
 
 <!-- snip --> 
</g:if> 

上一页  4 5 6 7 8 9 10  下一页

Tags:精通 Grails 了解

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接