updateRecord (): требуется запись - PullRequest
0 голосов
/ 24 мая 2019
onSaveClick: function(button) {
    var dialog, store, record;
    dialog = button.up('window').down('form');
    // var temprec = dialog.getRecord();
    dialog.updateRecord();
    // dialog.addSorted();
    record = dialog.getRecord();
    store = record.store;
    if (store) {
        if (record.phantom) {
            store.add(record);
        }
        console.log(dialog);
        store.sync({
            failure: function(batch) {
                store.rejectChanges();
                Application.app.showError(batch.exceptions[0].getError().response);
            }
        });
    } else {
        record.save();
    }
    this.closeView();
}

Я пытаюсь выполнить операцию CRUD в extJs, но получаю ошибку в updateRecord():

Требуется запись.

  dialog.getRecord();
//        dialog.updateRecord();
          dialog.updateRecord(); 
//        record = dialog.getRecord();
          record = dialog.getValues();
//        dialog.updateRecord();     
          store = record.store;    

i tried getRecord and getValues both working properly but getting same error on updateRecord();
ext-all-debug.js:2612 Uncaught Error: A record is required.

1 Ответ

0 голосов
/ 24 мая 2019

Чтобы использовать updateRecord() в соответствии с документацией (https://docs.sencha.com/extjs/6.7.0/classic/Ext.form.Panel.html#method-updateRecord), вам нужно use loadRecord(record) на панели форм.

Я полагаю, вам нужно использовать метод getValues(), если ни у одной записи нетбыл загружен или просто загрузите запись перед использованием метода updateRecord().

...