Sencha touch 如何使用sencha touch获得hasOne模型
我有一个模型横幅和一个模型横幅格式。横幅具有横幅格式。为了在横幅和横幅格式之间配置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' }
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”相同