У меня есть модель, которая описывает организацию и подсерию, которая описывает разрешения для организации.Как я могу управлять извлечением данных для двух разных моделей перед визуализацией представления?
На мой взгляд, мне нужно получить данные из обеих моделей перед рендерингом. Когда я привязываю метод рендеринга представления к одному событию (например, model.change или subcollection.sync), есть моменты, которые мой экран отображает до того, как мои модели заполняются, что приводит к ошибке.
Вот соответствующая часть моего кода:
this.model = new OrgModel({id: id});
this.model.permissions = new PermissionsCollection({org: id});
this.model.permissions.on("sync", this.render); // SOMETIMES GETS CALLED BEFORE model:sync GETS CALLED
this.model.permissions.fetch({error: Utils.apiError});
this.model.fetch({error: Utils.apiError});
Я не уверен, какое событие назвать «визуализацией» - потому что времена, которые каждый запрос возвращается первым.
Есть ли способ связать события синхронизации с тем, чтобы при вызове model.fetch он, в свою очередь, вызывал subcollection.fetch и не передавал событие sync, пока не будет выбран субколлекция: sync называется?
Я предполагаю, что я мог бы сделать выборку последовательный, например, так: this.model.permissions.fetch ({ успех: функция() {this.model.fetch ({ошибка : Utils.apiError})}, error: Utils.apiError }); Не уверен, что это лучший способ –
[Магистраль - выполнение множественной выборки() перед рендерингом вида] (http://stackoverflow.com/a/14963041/557612) – steveax