Показать сообщение отдельно
  #60 (permalink)  
Старый 22.06.2015, 15:51
Аспирант
Отправить личное сообщение для Пролетарий Посмотреть профиль Найти все сообщения от Пролетарий
 
Регистрация: 01.06.2015
Сообщений: 57

Рассортировал файлы по папочкам в примере, но возможно он и не понадобиться для текущих моих проблем. https://fiddle.sencha.com/#fiddle/p53

Т.к. возникли проблемы с загрузкой данных, автономной и вложенной в форму таблицы, то решил попробовать сделать пока добавление и удаление строк этой таблицы и у меня кажется возникло просветление, а может наоборот ещё сильнее в заблуждение погрузился. : )

Только сейчас осознал, что мой стор для автономной таблицы заметок, является глобальным и поэтому он грузиться при автолоаде сразу при создании приложения. Я последил за другими таблицами и получается, что при старте приложения, грузятся сторы, а затем происходят обмены с сервером, только конкретными записями (строками), а весь стор больше не разу не грузиться полностью, как при автолоаде.

Получается что даже если я смогу при load() отправлять ИД ордера, для которого надо получить заметки, то стор заметок будет обновляться и там будут данные только для одного текущего ордера, а если у меня их открыто несколько, то они будет иметь одни и те же заметки, т.к. стор содержит заметки только для одного ордера. И стор будет заменяться при каждом load(). А это не то что нужно.

Получается, что мне надо получить все заметки для всех ордеров, как происходит сейчас, но добавить к полям заметок ещё ИД их родителя, т.е. ордера, к которому относятся заметки. А уже в самой таблице, каким-то образом показывать заметки, только для ордера, который открыт в текущей закладке.

Для того что я хотел изначально, в ExtJS получается нужно создать отдельный стор с заметками для каждого ордера, т.е. если у меня 100 ордеров, то должно быть создано 100 уникальных сторов с заметками. Не знаю, насколько это правильно с точки зрения ExtJS.

Кстати, придумал как передать в таблицу заметок ИД ордера, т.е. добавил в bind переменную с ИД, во время создания таблицы.
{
        xtype: 'noteGrid',
        fieldLabel: 'Заметки:',
    
        bind: {
            data: {
                orderId: '{singleOrder.id}'
            }
        },
    }


Правда получение этой перемененной внутри таблицы получается каким-то уродским:
this.getView().bind.data.lastValue.orderId


Похоже теперь надо добавить ИД ордера в json с заметками и придумать как выводить в таблице только нужные заметки.

Последний раз редактировалось Пролетарий, 22.06.2015 в 15:55.
Ответить с цитированием