После установки записи на грязное, хранилище фиксирует все поля - PullRequest
0 голосов
/ 27 марта 2012

Я изменяю некоторые значения записи и впоследствии устанавливаю ее грязной.Хотя установите 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 Ответ

0 голосов
/ 27 марта 2012

Вам не нужно ставить всю запись грязной. Вы можете просто set() новые значения. Если они грязные, это определяется внутренне путем сравнения Record.modified с Record.data.

...