ExtJs - Как получить значение из магазина по идентификатору?

Как получить значение из хранилища по идентификатору?

хранить в таких полях

    fields: [
    {name: "id", type: 'int'},
    {name: "name", type: 'String'},...

Мне нужно получить значение id-name.

Я стараюсь:

    var rec = Ext.StoreMgr.lookup("MyStore").getById(id);
    alert(rec.data.name);

что я делаю неправильно?

Ответ 1

Функция getById находит запись с указанным идентификатором, которая не имеет ничего общего с идентификатором, указанным в конфигурации полей. Обычно он выглядит в файле record.id, а ваш находится в файле record.data.id.

Для 3.3.1 вы должны использовать:

var index = Ext.StoreMgr.lookup("MyStore").findExact('id',id);
var rec = Ext.StoreMgr.lookup("MyStore").getAt(index);