2012-05-08 5 views
0

extjs4에 익숙하지 않습니다. 데이터 저장소의 행 수를 표시해야하는 gridpanel에 문제가 있습니다. 내 문제는 여기 Extjs4 gridpanel 행 데이터가 json 데이터 스토어와 동일하지 않습니다.

여기 그리드를

Ext.create('Ext.grid.Panel', { 
     id: 'gridcb', 
     store: Ext.data.StoreManager.lookup('mystore'), 
     columns: [ 
      {header: 'ci', dataIndex: 'co'}, 
      {header: 'co', dataIndex: 'co', flex:1}, 
      {header: 'durasi', dataIndex: 'durasi'}, 
      {header: 'issue', dataIndex: 'id'} 
     ], 
     height: 200, 
     width: 400, 
    }); 

있어 가게를

var mystore = Ext.create('Ext.data.Store', { 

     storeId:'mystore', 
     fields:['ci', 'co', 'durasi', 'id'], 
     proxy: { 
      type: 'ajax', 
      url : 'exe_report_issue_order.php?function=store', 
      actionMethods : 'POST', 
      reader: { 
       type: 'json', 
       root: 'rows' 
      } 
     } 
    }); 

및 JSON 리턴 (6)의 ... 그리드 패널 만 4 개 행을 보여줍니다 왜 데이터 저장소는하지만, 6 행으로 JSON을 검색입니다 독특한 행. 단지 4 행 ...

{success:true, 
rows:[{ "ci":"2012-04-17 17:13:48", 
     "co":"2012-04-17 17:13:59", 
     "durasi":"00:00:11", 
     "id":"154" 
     }, 
     {"ci":"2012-04-26 08:05:00", 
     "co":"2012-04-26 10:00:00", 
     "durasi":"01:55:00", 
     "id":"157" 
     }, 
     {"ci":"2012-04-26 13:00:00", 
     "co":"2012-04-26 17:00:00", 
     "durasi":"04:00:00", 
     "id":"158" 
     }, 
     {"ci":"2012-04-17 13:00:00", 
     "co":"2012-04-17 17:00:00", 
     "durasi":"04:00:00", 
     "id":"65" 
     }, 
     {"ci":"2012-04-18 08:00:00", 
     "co":"2012-04-18 10:00:00", 
     "durasi":"02:00:00", 
     "id":"65" 
     }, 
     {"ci":"2012-04-18 17:45:00", 
      "co":"2012-04-18 22:00:00", 
      "durasi":"04:15:00", 
      "id":"65" 
     }, 
     {"ci":"2012-04-18 23:30:00", 
     "co":"2012-04-19 03:30:00", 
     "durasi":"-20:00:00", 
     "id":"65" 
     } 
    ] 

}을 보여 왜

아무도 나에게 설명 할 수있다 ???하시기 바랍니다. 감사합니다.

+1

반환되는 json도 포함시킬 수 있습니까? –

+0

나는 잘 모르겠다.하지만 'id'가 같을 때 마지막 하나를 렌더링 할 때 .. 'id'필드에 변경 사항이 없다면 ... – abhie

답변

2

상점에 중복 ID가있는 항목을 가질 수 없으며 고유해야합니다.

+1

발견되면 ... 실제로 'id' (기본 키와 같은) 각 행에 대한 식별자가 아닙니다. 이름이 'id'인 열입니다. ... 열의 이름을 변경하여 해결했습니다. – abhie

+0

extjs-2.2에서이 문제를 결코 해결하지 못했습니다 ... 고맙습니다. – abhie

+2

ExtJs의 새로운 버전은 모델에'idProperty' 정의를 가지고 있습니다 - 기본적으로'id'입니다. 그래서이 레코드들은 중복 된 것으로 취급됩니다. – sha