Я видел ту же проблему, и моя теория состоит в том, что совпадение идентификатора в возвращенной записи не происходит должным образом.То, что я имею в виду под этим, на мой взгляд, тип idProperty должен быть, например, int, а не строкой или чем-то подобным.Я не смог доказать это, так или иначе, но у меня есть обходной путь.Вот как я «справился» с этой проблемой:
1).Не отправляйте обратно данные, просто отправьте сообщение об успехе.
2).Снимите флажок «грязный» вручную с помощью следующего слушателя магазина:
listeners : {
write: function(store, operation, opts){
console.log('request wrote!');
//workaround to sync up store records with just completed operation
Ext.each(operation.records, function(record){
if (record.dirty) {
record.commit();
}
/*if (record.phantom) {
record.phantom=false;
}*/
});
store.load();
},
delay: 2000
}
РЕДАКТИРОВАТЬ : я задал этот вопрос некоторое время назад на форумах премиум-класса, и я получил ответ, что он долженработать, и вот пример, который должен доказать это.http://pastebin.com/z3gekQDn Обратите внимание на отображение идентификатора в модели.