使用association的地址:http://blog.csdn.net/aaoxue/article/details/8291028
xml如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<teacherList>
<teacher>
<name>teacher1</name>
<students>
<name>student1_1</name>
<name>student1_2</name>
</students>
</teacher>
<teacher>
<name>teacher2</name>
<students>
<name>student2_1</name>
<name>student2_2</name>
</students>
</teacher>
</teacherList>
Ext.define("student.Model",{
extend:"Ext.data.Model",
fields:[
{name:'name',mapping:'/'}
]
});
//定义数据集概要
Ext.define('teacher.Model', {
extend : 'Ext.data.Model',
fields : [{
name : 'name',
mapping : 'name'
}, ///学生信息
{name:'students',mapping:'students',
convert:function(vii,rii){
var areader = new Ext.data.reader.Xml({
model: "student.Model",
type: 'xml',
record: "students>name"
});
return areader.readRecords(rii.raw).records;
}
}
]
});
model 设置就是这样,创建store
var tstore = Ext.create('Ext.data.Store', {
storeId:'simpsonsStore',
model:'teacher.model'
});
创建学生store
var sstore = Ext.create('Ext.data.Store', {
storeId:'simpsonsStore',
model:'student.store'
});
学生store获取数据需要通过
sstore.loadRecords(tstore.getAt(i).get('students'))获取数据,i为具体教师store中的record的ID值,