2011-12-22 2 views
0

Я думаю, что вложенные загрузки данных в ExtJS 4 невозможны в реальном мире. Например, у меня есть несколько моделей для тренингов, для пользователей и для какой-либо модели, которая описывает, как тренинги назначаются пользователям, которые назначили пользователю обучение и т. Д. Я думаю, что неправильно вступать в PHP-модель (я использую ZF 1.x) для получать имена пользователей и фамилии вместо своих идентификаторов, и неправильно объединять данные из двух выборок (выберите соединение с трафиками и таблицей тренировок для пользователей и выберите пользователей, в которых идентификатор (список идентификаторов от объединения выше)) в контроллере , Хорошая практика сделать это в режиме просмотра, не так ли? Но вложенная загрузка данных ExtJS 4 говорит мне: создать иерархическую структуру (с большим количеством дубликатов вложенных данных!) И передать ее мне. Почему мне нужно делать эту работу? Я лучше объединю данные в контроллере! Мой последний вопрос: если у меня есть JSON как это:ExtJS 4 Вложенные данные Загрузка другим способом

{ 
trainings: [{"id":"1", "user_id":278,"assigner_id":30, ...}, {...}], 
users: ["278": {"firstname":"Guy", "lastname":"Fawkes"}, "300":{....}, ...] 
} 

Могу ли я создать еще одну вложенную загрузку данных из этих данных? Спасибо.

ответ

0

Да, вы можете ... вроде бы. Один из способов сделать это - определить отдельные магазины для пользователей и тренинги, а затем использовать loadData (JSON.users) для загрузки данных, которые были предварительно запрограммированы.

+0

Да, теперь я сделал что-то таким образом ... Но если я хочу: 1) создать рендереры из столбцов 2) Использовать сетку paginator - как я могу остановить рендеринг сетки, а второй магазин не загружен и запустить его при загрузке ? –

+0

не уверен, что я следую, но сетки будут автоматически прослушивать события загрузки магазина. – dbrin

+0

Да, но сетка имеет только один магазин, и когда данные в его магазинах уже загружены, данные во втором хранилище еще не загружены, поэтому их нельзя использовать в рендерере столбца. –

Смежные вопросы