2013-12-19 3 views
0

내 도메인 클래스에 client_id, client_name, client_address의 세 필드가 있습니다. list.gsp 페이지에서 client_name의 기본 검색을 수행하려고합니다. 나는 그것을 시도했지만 나를 위해 일하지 않습니다. 나는 grails에 처음이다. 올바른 접근법이나 가능한 해결책을 따라야합니까?필드에서 작동하지 않는 것으로 검색

의 list.gsp 페이지 : -

<g:if test="${flash.message}"> 
      <div class="message" role="status">${flash.message}</div> 
     </g:if> 
     <fieldset class="form"> 
      <g:form action="list" method="GET"> 
       <div class="fieldcontain"> 
        <label for="query">Search for Client Name:</label> 
        <g:textField name="query" value="${params.query}"/> 
       </div> 
      </g:form> 
     </fieldset> 

ClientController.groovy : -

def list(Integer max) { 
    params.max = Math.min(max ?: 10, 100) 


    def taskList = Client.createCriteria().list (params) { 
     if (params.query) { 
      ilike("client_name", "%${params.query}%") 
      ilike("client_id", "%${params.query}%") 
     } 
    } 

    [clientInstanceList: taskList, clientInstanceTotal: Client.count()] 
} 
+0

작은 새 '값 = "$ {params.query}"' – Deepak

답변

2

티끌 코드 Grails는이

낮은 (this_.client_name를) 다음과 같은 쿼리를 생성합니다 같은 ? 낮은 (this_.client_id)와 (과) 유사합니까?)

나는 또는 전도로 변경해야 할 것 같아요.

def taskList = Client.createCriteria().list (params) { 
     if (params.query) { 
      or{ 
       ilike("client_name", "%${params.query}%") 
       ilike("client_id", "%${params.query}%") 
       } 
     } 
    } 
+0

을 제거하려고 ..... 자동 완성 옵션을 플러그인하는 것이 가능하다는 것을 Grails의 리치 UI Plugin.In를 사용하는 고마워 ... 작동 :) –

0

봅니다

관련 문제