2011-10-25 1 views
1

다음과 같이 다차원 배열을 가지고 있습니다 (유효한 JSON으로 PHP 출력). JSON 데이터 저장소를 통해 Ext에 링크했습니다. 이 배열의 발췌 버전 :Ext 4에 데이터 저장소 하위 배열 값을 사용하여 데이터 격자를 만드는 방법은 무엇입니까?

$data = array(
     "user"=>array(
      "details"=>array(
       "first_name"=>"John", 
       "last_name"=>"Doe", 
       "birthday"=>"03/21/1982" 
      ), 
      "campaigns"=>array(
       array(
        "id"=>"19283", 
        "name"=>"Great Campaign One", 
        "status"=>3 
       ), 
       array(
        "id"=>"59433", 
        "name"=>"Great Campaign Two", 
        "status"=>1 
       ) 
      ), 
      "notifications"=>array(
       array(
        "id"=>"32143", 
        "subject"=>"This is a message for you", 
        "summary"=>"You need to do this and this...", 
        "read"=>0, 
        "status"=>3 
       ), 
       array(
        "id"=>"54324", 
        "subject"=>"New Message too", 
        "summary"=>"More info for a great typer...", 
        "read"=>1, 
        "status"=>5 
       ) 
      ) 
     ) 
    ); 

내가 서버 호출을 최소화하고자하기 때문에, 내가 한 번이 기록을 호출 한 후 (등 세부 사항, 알림, 캠페인) 하위 배열에 접근하고 싶습니다 내 앱 전체에서 별도의 데이터 그리드가 필요합니다. 각 하위 어레이마다 별도의 저장소가 필요합니까? 또는 하나의 상점을 사용하여 그리드 및 Tpl에서 직접 액세스 할 수 있습니까?

감사합니다.

답변

1

다른 상점을 제안합니다. Ext 4에서는 모델을 사용하여 상점을 구성 할 수 있으므로 사례의 전체 "사용자"보다는 "알림"과 같은 컨텍스트에서 더 적합합니다. 그 이유는 모든 "사용자"데이터를 하나의 모 놀리 식 모델에 넣으면 Ext Reader 개체가 기본적으로 플랫 데이터 집합에서 작동하기 때문에 많은 오버 헤드 코드가 발생하기 때문입니다. 모델의 각 인스턴스를 사용자의 모 놀리 식으로 만든 경우 저장소 판독기의 읽기 코드에 추가 코드를 추가해야합니다.

또한 "사용자"의 각 섹션이 별도의 그리드에 사용되는 경우 Ext 그리드가 단일 저장소를 통해 유선되기 때문에 분명히 다른 매장이 필요합니다. 그리고 그리드는 글자 그대로 저장소의 데이터를 표시합니다. 그리드의 각 행은 저장소의 Model 인스턴스에 해당합니다.

자세한 내용은 this, thisthis을 참조하십시오.