找不到任何关联

时间:2013-06-11 13:32:45

标签: extjs sencha-touch-2

我的用户有很多考试。

用户:

Ext.define('Tm.model.User', {
    extend: 'Ext.data.Model',

    config: {
        hasMany: { model: 'Tm.model.Exam', name: 'exams' },

        fields: [
            { name: 'id', type: 'int' },
            { name: 'username', type: 'string' },
            { name: 'email', type: 'string' },
            { name: 'nameFirst', type: 'string' },
            { name: 'nameLast', type: 'string' }
        ],

                ...
    }
});

考试:

Ext.define('Tm.model.Exam', {
    extend: 'Ext.data.Model',

    config: {
        belongsTo: 'Tm.model.User',

        fields: [
            { name: 'id', type: 'int', defaultValue: null },
            { name: 'title', type: 'string', defaultValue: 'Exam' }
        ],

                ...
    }
});

致电var exams = user.exams();给我:Uncaught TypeError: Object [object Object] has no method 'exams'

1 个答案:

答案 0 :(得分:4)

您必须要求生成相关模型才能生成getter。

所以将其添加到Tm.model.User

的定义中
requires: ['Tm.model.Exam']