2013-05-27 2 views
0

Ajax 저장소에서 채울 다중 정렬을 구현해야하지만 간단한 정렬 열에도 문제가 있습니다. 도움의AjaxStore로 멀티 정렬/정렬 격자

dsUser = Ext.create('Ext.data.Store', { 
     model: 'user', 
     pageSize: defPagSize, 
     totalProperty: 'totalCount', 
     autoLoad: {start: 0, limit: defPagSize}, 
     remoteSort: true, 
     proxy: { 
      type: 'ajax', 
      enablePaging:true, 
      url: '<c:url value="/queryForList.action?query=User.getUsers"/>', 
      reader: { 
         type: 'json', 
         root: 'list', 
         totalProperty:'totalCount' 
      } 
     } 
}); 

anyType에이 유용합니다 :

이 내 저장소입니다. 감사합니다. .

편집 : 이제 내 응용 프로그램에서 정렬의 오래된 논리를 다시 작성합니다.이 순간 나는 누군가가 게시물을 배치하고 게시 할 수있는 격자를 (속성 : '', 방향 : ')를 선택하고 그리드의 아이콘을 선택하여 선택합니다. (내 영어에 대한 미안)

답변

1

프록시는 단지 JS에서 사용할 수있는 구조의 sortParam과 값을 통해 보내고 있습니다 ... 예를 들어 JSON으로 인코딩 된 객체 배열 ([{ "property": "email" , "direction": "DESC"}]).

이 요청을 서버 측에서 받으면 정렬 순서 개체를 먼저 구문 분석하고 DB에서 이해할 수있는 문자열로 변환해야합니다. DB에서 쿼리 문자열의 원시 값을 사용하면 작동하지 않으며 그렇게 작동하지도 않습니다. 나는이 작업을 수행 할 때

는,이 같은 일반적이다 : 수신 요청

  • 쿼리 문자열의 정렬 순서 PARAM에 대한
  • 검색
  • 디코드 내 서버 측 응용 프로그램의 언어의 객체로 JSON 문자열 뭉치의 배열을 통해
  • 으로 반복하고 "종류"문자열을 구축
  • DB를 쿼리에 따라
  • 보내기 해석 정렬 문자열