문제

ext.data.model을 extjs 저장소로 사용 하여이 XML을 읽으려고합니다.

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

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

I 인터페이스 그리드의 'name'열에 'eth0'과 'eth1'을 표시하고 싶습니다.

이 매핑 {name : '인터페이스', 매핑 : 'Green> name'} 만 eth0 만 표시합니다.

그리드에서 eth0 및 eth1을 보여주기 위해 어떻게 매핑을 할 수 있습니까? XML 파일 구조를 수정해서는 안됩니다.

미리 감사드립니다

도움이 되었습니까?

해결책

recordXmlReader 구성은 root 태그에 대해 지정된 선택기입니다.

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

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

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top