I am trying to get my head round what appears to be the simplest of things:
I want to load a collection of objects via a JSON-returning server-side call,
why do all these return something unexpected?
> modelStore.data.items[0].Id
undefined
> modelStore.data.items[0].getId()
undefined
> modelStore.data.items[0].getTitle()
TypeError: Object [object Object] has no method 'getTitle'
> modelStore.getById(1)
null
> modelStore.getTotalCount()
1
> modelStore.first()
Ext.Class.newClass < should be PegModel??
The code:
Ext.define('PegfileApp.model.PegModel', {
extend: 'Ext.data.Model',
fields: ['Id', 'Title'],
//hasMany: {model: 'RootDimension', name: 'rootDimensions'},
proxy:
{
type: 'ajax',
url: 'PegModel',
timeout: 120000,
noCache: false,
reader:
{
root: 'PegModel',
successProperty: 'success'
}
}
});
Ext.define('PegfileApp.store.PegModels', {
extend: 'Ext.data.Store',
model: 'PegfileApp.model.PegModel',
autoLoad: true,
autoSync: false,
proxy: {
type: 'ajax',
url: 'PegModel',
reader: {
type: 'json',
root: 'PegModels',
successProperty: 'success'
}
}
});
The data:
{"PegModels":[{"Title":"PegModel","Id":1}],"success":true}
I understood for each property defined on the Model, we have a corresponding getter: get{PropertyName}()?
Do i need to cast the "Record" somehow to a "Model"?