Магазин Extjs 4.0 - как найти поля в магазине (или модели) - PullRequest
5 голосов
/ 16 сентября 2011

В Ext 3.x я мог получить массив имен полей с этим:

mystore.fields.keys

Как я могу сделать это в 4.0? Я даже не вижу, как получить модель, которую использует магазин (без метода getModel). Мне нужно найти запись и получить поля таким образом? Я определяю магазин с помощью:

Ext.define('AM.store.Equipments', {
    extend: 'Ext.data.Store',
    model: 'AM.model.Equipment',

    mycustFunc: function () {
            var myfields = this.fields.keys  (fails!)

EDIT: Спасибо ... глядя в firebug больше похоже, что это получает то, что я хочу:

this.model.prototype.fields.keys

Ответы [ 2 ]

9 голосов
/ 16 сентября 2011

Хотя для самого Магазина нет метода getModel(), прокси-сервер содержит модель, поэтому вы можете просто использовать store.getProxy().getModel() для извлечения модели и, следовательно, полей модели. Для тиражирования Магазина просто используйте модель: originalStore.getProxy().getModel().modelName.

0 голосов
/ 22 февраля 2013

я изменяю поля из моего магазина,
просто так:

myStore.model.setFields(fields);
...