После установки записи на грязное, хранилище фиксирует все поля
Я изменяю некоторые значения записи и впоследствии устанавливаю ее грязной. Хотя установите writeAllFields в поля (что работает нормально, если я редактирую свои данные через форму редактирования).
Контроллер метод:
activateDeactivate: function(grid, selection, active) {
for(var i = 0; i < selection.length; i++) {
selection[i].data.status = (active) ? 1 : 0;
selection[i].setDirty();
}
var store = this.getStore('Creatives');
store.sync();
}
Магазин писателя:
writer:{
type:'json',
writeAllFields:false,
allowSingle: false // always wrap data in an array
//root: 'data'
}
Обновлен метод контроллера:
activateDeactivate: function(grid, selection, active) {
for(var i = 0; i < selection.length; i++) {
selection[i].data.status = (active) ? 1 : 0;
values = selection[i].data;
selection[i].set(values);
}
var store = this.getStore('Creatives');
store.sync();
}
1 ответ
Решение
Вам не нужно ставить всю запись грязной. Вы можете просто set()
новые ценности. Если они грязные, внутренне определяется путем сравнения Record.modified
в Record.data
,