Показать сообщение отдельно
  #2 (permalink)  
Старый 09.09.2014, 17:48
Профессор
Отправить личное сообщение для siber-biber Посмотреть профиль Найти все сообщения от siber-biber
 
Регистрация: 07.08.2013
Сообщений: 214

у вас похоже каша в голове по поводу организации классов в эксте.. либо я чёто не понимаю в extjs5 (хотя вряд ли они такой прыжок вбок замутили после 4й версии).
Ext.define() - определяет класс (тип данных объектный).
Ext.create() - создает сам объект данного типа.

Так вот я нигде не вижу создания стора. Ну и демонстрация путаницы вот этот кусок:
Ext.define('MyApp.store.Trailer', {
    extend: 'Ext.data.Store',

    requires: [
        'MyApp.model.Trailer'
    ],

    constructor: function(cfg) {
        var me = this;
        cfg = cfg || {};
        me.callParent([Ext.apply({
            autoDestroy: false,
            storeId: 'Trailer',
            model: 'MyApp.model.Trailer',
            proxy: {
                type: 'ajax',
                url: 'http://localhost:3000/find/0/'+Ext.util.Cookies.get("ssid")
            }

        }, cfg)]);
    }
});

Здесь вы определяете класс MyApp.store.Trailer. А в конструкторе класса вы каждому создаваемому экземпляру присваиваете один и тот же storeId (хотя он предполагает быть уникальным). Я понимаю что у вас наверно один экземпляр этого класса нужен, но должно выглядеть както так:
Ext.define('MyApp.store.Trailer', {
    extend: 'Ext.data.Store',
    model: 'MyApp.model.Trailer',
    proxy: {
        type: 'ajax',
        url: 'http://localhost:3000/find/0/'+Ext.util.Cookies.get("ssid")
    }
});

Ext.create('MyApp.store.Trailer', {
    storeId: 'Trailer'
});
Ответить с цитированием