Я бы хотел смоделировать данные, полученные из магазина. Полученные данные имеют такую структуру JSON:
{
"idContractBor": 266,
"idContract": 212,
"dateFrom": "2015-01-01T00:00:00",
"dateTo": "2015-12-31T00:00:00",
"description": "Example1",
"lines": [
{
"idContractBor": 266,
"idContract": 212,
"amount": 18844.21,
"accountingDate": "2015-01-01T00:00:00",
},
{
"idContractBor": 266,
"idContract": 213,
"amount": 500,
"accountingDate": "2015-01-01T00:00:00",
}
]
}
Я создал две модели:
Detail. js
Ext.define('example.model.contracts.Detail', {
extend: 'Ext.data.Model',
fields: [
{name : 'idContractBor', type: 'number'},
{name : 'idContract', type: 'number'},
{name :'dateFrom', type: 'date'},
{name :'dateTo', type: 'date'},
{name :'description', type: 'string'}
],
hasMany: {model: 'example.model.contracts.Lines', name: 'lines', associationKey: 'lines' },
Линии. js
Ext.define('example.model.contracts.Lines', {
extend: 'Ext.data.Model',
fields: [
{ name: 'idContractBor', type: 'number' },
{ name: 'idContract', type: 'number' },
{ name: 'amount', type: 'number' },
{ name: 'accountingDate', type: 'date' },
],
belongsTo:'example.model.contracts.Detail'
});
И магазин, которым я пользуюсь. Это простой вызов ajax на сервер:
DetailStore. js
Ext.define('example.store.DetailStore', {
extend: 'Ext.data.Store',
storeId: 'DetailStore',
model: 'example.model.contracts.Detail',
alias: 'store.DetailStore',
id:'detailStore',
autoLoad: false,
proxy: {
type: 'ajax',
url: './JsonService',
paramsAsJson: true,
actionMethods: {
read : 'POST',
},
extraParams: {
type: 'SelectDetail'
},
reader: {
type: 'json',
root : '',
},
pageParam: false,
startParam: false,
limitParam: false,
},
listeners: {
load:{
fn: function(store, records, success, obj){
if(success){
console.log("There u have")
[...............]
}
}
}
}
});
Проблема заключается в том, когда я отлаживаю в консоли разработчика I не вижу данных, смоделированных должным образом. деталь имеет правильную форму, но линии , кажется, не могут быть добавлены в модель Lines.
Все эти вещи имеют объект, который должен отображаться в сетка панели с формой выше.
Что-нибудь не хватает?,
Заранее спасибо