Extjs从子ownerTo关系访问父亲

时间:2013-11-29 21:27:05

标签: extjs extjs4.2

我需要一些帮助,我几天都在努力奋斗! :我正试图通过belongsTo关系从一个孩子那里访问父亲,我已经尝试了所有的事情,每个例子都没有! :(我做错了什么,这是我的代码:

父:

Ext.define('MyApp.model.Career', {
     extend: 'Ext.data.Model'
    ,idProperty: 'CareerID'
    ,fields: ['Name', 'SchoolID',
        {
            name : 'CareerID',
            type: 'int'

        }
    ]
    ,proxy: {
        type: 'ajax'        
        ,url: 'fakeServices/careers.js'        
        ,reader: {
            type: 'json',
            root: 'data',
            successProperty: 'success'
        }
    }
});

儿童:

Ext.define('MyApp.model.Course', {
     extend: 'Ext.data.Model'
    ,fields: ['CourseID', 'Name', 'CourseStatusID', 'Description',
        {
            name: 'CareerFK',
            type: 'int'
        }]
    ,belongsTo: {            
        model:'Career',
        primaryKey: 'CareerID',
        foreignKey: 'CareerFK',
        associationKey: 'Career'
    },proxy: {
        type: 'ajax'
        ,url: 'fakeServices/courses.js'
        ,reader: {
            type: 'json',
            root: 'data',
            successProperty: 'success'
        }
    }

});

我如何加载(课程是一个没有代理的简单商店,只是声明课程模型):

Ext.StoreManager.lookup('Courses').load();

JSON:

{
    "success" : true,
    "data" : [{
        "CourseID": 1,
            "Name": "Curso1",
            "CourseStatusID": "1",
            "Description": "Learn!",
            "CareerFK" : 1,
            "Career": {
            "CareerID" : 1,
                "Name": "Engineering"
            }
    }]
}

我正在进行什么操作(getCareer方法应该存在,但事实并非如此,课程模型中的所有字段都正确加载了JSON数据):

Ext.StoreManager.lookup('Courses').load();
Ext.StoreManager.lookup('Courses').data.items[0].getCareer();

PS:我试图用关联替换belogsTo:[{type:'belongsTo'}],它仍然不起作用

0 个答案:

没有答案