2012-07-26 2 views
1
내가 ExtJS로 스토어에 Ext.data.Model를 사용하여이 XML을 읽을 수

:의 ExtJS XML 매핑

<interfaces> 
    <green> 
     <name>Eth0</name> 
     <enabled>true</enabled> 
    </green> 

    <red> 
     <name>Eth1</name> 
     <enabled>true</enabled> 
    </red> 
</interfaces> 

를 내가의 '이름'란에 'Eth0이'와 'Eth1이를'보여주고 싶은 내 인터페이스 그리드.

이 매핑 {이름 : '인터페이스', 매핑 : '녹색> 이름'}은 Eth0 만 표시합니다.

그리드에서 Eth0 및 Eth1을 표시하도록 매핑을 수행하려면 어떻게해야합니까? xml 파일 구조를 수정해서는 안됩니다. 미리

답변

0

덕분 XmlReaderrecord의 구성은 선택기 root 태그에 대해 특정된다.

루트의 모든 하위 태그를 레코드로 읽으려면 태그 이름에 관계없이 > * 선택자를 사용하여 모든 하위 태그를 선택할 수 있습니다.

Ext.define('MyModel', { 
    extend: 'Ext.data.Model', 
    fields: [ 'name', 'enabled' ], 
    proxy: { 
     type: 'ajax', 
     reader: { 
      type: 'xml', 
      root: 'interfaces', 
      record: '> *' 
     } 
    } 
}); 
+0

Example 당신에게 문제 없음 – sfallahdoost

+0

러스 대단히 감사합니다! 나는 JSON을 사용하기 때문에 XML 리더를 파헤쳐보고 싶다. –