ExtJs 不期望来自服务器的响应与 ExtJs 4 相同的响应来确认更新行。
我有一个带有字符串 id 的表:
Ext.define('App.Product', {
extend: 'Ext.data.Model',
fields: [
{name: 'productid', type: 'string'},
{name: 'ord', , type: 'int'},
(...)
],
idProperty: 'nrproduit'
})
保存更改后,ExtJs 客户端将修改后的数据发送到服务器:
[{"ord":1,"productid":"SG30301"},{"ord":3,"productid":"SG30100"}]
在 ExtJs 4.2 中,它期望服务器将两个产品的完整数据发回,如下所示:
{
"success":true,
"data":[{
"nrproduit":"SG30100",
"ord":3,
"author":"...",
"editor":"...",
(...)
},{
"nrproduit":"SG30301",
"ord":3,
"author":"...",
"editor":"...",
(...)
}]
}
在 ExtJs 6.2 中,这不再有效。我得到错误
未捕获的错误:旧密钥“SG30301”的项目的新密钥“SG30100”重复
显然,客户端没有考虑到idProperty
,但似乎期望响应中的行顺序与请求中的相同。
有没有办法强制客户端考虑从服务器发回的 id?还是有必要更改服务器代码?是否有关于 ExtJs 4.2 和 6.2 在客户端和服务器之间的数据同步方面的确切变化的文档,这些详细信息?