Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sencha touch 如何使用sencha touch获得hasOne模型_Sencha Touch_Sencha Touch 2 - Fatal编程技术网

Sencha touch 如何使用sencha touch获得hasOne模型

Sencha touch 如何使用sencha touch获得hasOne模型,sencha-touch,sencha-touch-2,Sencha Touch,Sencha Touch 2,我有一个模型横幅和一个模型横幅格式。横幅具有横幅格式。为了在横幅和横幅格式之间配置hasOne关系,我写了以下内容: Ext.define('admin.model.Banner', { extend: 'Ext.data.Model', config: { fields: [ { name: 'id', type: 'int' }, { name: 'banner_format_id', type: 'int' }

我有一个模型横幅和一个模型横幅格式。横幅具有横幅格式。为了在横幅和横幅格式之间配置hasOne关系,我写了以下内容:

Ext.define('admin.model.Banner', {
    extend: 'Ext.data.Model',
    config: {
        fields: [
            { name: 'id', type: 'int' },
            { name: 'banner_format_id', type: 'int' },
            'code',
            'active',
            'start_at',
            'end_at'
        ],
        associations: { type: 'hasOne', model: 'admin.model.BannerFormat', getterName: 'getBannerFormat' },
        proxy: {
            type: 'ajax',
            url: '/admin/api_query.php',
            extraParams: {
                table: 'content_banners',
                type: 'GET'
            }
        }
    }
});
在我的横幅格式模型中:

Ext.define('admin.model.BannerFormat', {
    extend: 'Ext.data.Model',
    config: {
        fields: ['id', 'format'],
        associations: { type: 'hasMany', model: 'admin.model.Banner' },
        proxy: {
            type: 'ajax',
            url: '/admin/api_query.php',
            extraParams: {
                table: 'content_banner_formats',
                type: 'GET'
            }
        }
    }
});
但是当我调用banner.getBannerFormat()时,我得到:


我出了什么问题?

是否创建了一个banner对象,然后调用它来检索定义的关联

这应该适合您:

var banner = Ext.create('admin.model.Banner', {
    id: 100,
    banner_format_id: 20,
    code: 'ABC123',
    active: true,
    start_at: 1,
    end_at: 5
});

banner.getBannerFormat();

另外,如果不需要,也不需要为关联指定getterName。Sencha将自动为关联生成一个getter函数,其格式为:“getModelName”。如果您从关联中删除了getterName,那么banner模型上的getter函数将与您定义的“getBannerFormat”相同

您是否正在创建一个banner对象,然后调用它来检索已定义的关联

这应该适合您:

var banner = Ext.create('admin.model.Banner', {
    id: 100,
    banner_format_id: 20,
    code: 'ABC123',
    active: true,
    start_at: 1,
    end_at: 5
});

banner.getBannerFormat();
另外,如果不需要,也不需要为关联指定getterName。Sencha将自动为关联生成一个getter函数,其格式为:“getModelName”。如果您从关联中删除了getterName,那么banner模型上的getter函数将与您定义的“getBannerFormat”相同