Extjs 5数据模型 - 有很多关联

时间:2014-10-28 11:24:39

标签: extjs extjs5

我正在尝试理解Extjs 5数据模型中的新关联概念。

我有以下型号

// User
Ext.define('App.model.User', {
    extend: 'App.model.Base',    
    fields: [
        {name: 'id', type: 'string'},
        {name: 'name', type: 'string'},
    ],    
    manyToMany: {
        Categories: {
            type: 'Categories',
            role: 'categories',
            field: 'categories',
            right: true
        }
    }
});

// Category
Ext.define('App.model.Category', {
    extend: 'App.model.Base',    
    constructor: function () {...},
    fields: [
        {name: 'id', type: 'string'},
        {name: 'categoryName', type: 'string'},
    ]
});

我为用户提供了以下json:

 { "user": { "id": "1", "name": "Foo", "categories": [1, 2, 3] } }

加载User模型时,应使用数据初始化类别商店。

(我的Category模型知道将数字转换为id& categoryName的对象)

出于某种原因,当我尝试获取用户的类别时,商店是空的。

userRecord.categories(); // has no records

我怎样才能让它发挥作用?

1 个答案:

答案 0 :(得分:1)

请尝试

//用户

Ext.define('User', {
    extend: 'app.data.Model',    
    fields: [
        {name: 'id', type: 'string'},
        {name: 'name', type: 'string'},
    ],    
    hasMany: {
        Categories: {
            type: 'Categories',
            role: 'categories',
            field: 'categories',
            right: true
        }
    }
});