我在单轨应用程序中使用 extjs。我正在使用 JsonStore 将数据保存回我的控制器。我已阅读、更新和删除工作正常。但我似乎无法弄清楚如何在创建时重新格式化我的回复。目前,Firebug 给我以下错误:
未捕获的异常:Ext.data.DataReader:#realize 被调用时使用了无效的远程数据。请参阅 DataReader#realize 的文档并查看您的 DataReader 配置。
我对 WTF 这个错误的含义感到困惑。有人有指点吗?下面的相关代码位:
var proxy = new Ext.data.HttpProxy({
api: {
read: '../foo/bar.rnr',
create: '../foo/CreateBar.rnr',
update: '../foo/UpdateBar.rnr',
destroy: '../foo/DeleteBar.rnr'
}
});
var writer = new Ext.data.JsonWriter({
encode: true,
writeAllFields: true,
listful: true,
destroyRecord: function(rec) {
return this.toHash(rec);
}
});
var store = new Ext.data.JsonStore({
autoLoad: true,
autoSave: false,
url: '../foo/bar.rnr',
method: 'get',
baseParams: { Id: pageParameters.Id },
proxy: proxy,
writer: writer,
id: 'Id',
fields: [
{ name: 'Id', type: 'int' },
{ name: 'Name', type: 'string' },
{ name: 'Note', type: 'string', defaultValue: null }
]
});
我目前的反应看起来像这样,但这是经过大量试验和错误之后,所以它被大量冲洗了。
{"success":true,"message":"OK!","undefined":[]}