2015-05-28 5 views
0

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

model: function() { 
     var self = this; 
     return Ember.RSVP.hash({ 
      foos: self.store.find('foos'), 
      bars: self.store.find('bars'), 
     }); 

Однако, если крючок модели задается моделью, передаваемой, например, ссылкой-помощником, как мне добавить дополнительную модель?

Спасибо!

EDIT

Так что в моем случае у меня есть блок и объективную, которые связаны между собой. A блок может иметь множество целей - хотя это односторонние отношения.

В моих единиц маршрут, я нажимаю на блок который связывает к ЕД/блок: ID маршрут. Поэтому модель установлена ​​в качестве модели, но я также хочу, чтобы все цели загружались в модель, чтобы я мог их выбрать и добавить в блок.

+0

Если вы используете информацию, передаваемую по помощник 'link-to' в вашем' Route', тогда как вы будете перестраивать маршрут с помощью 'link-to'? Другими словами, если я просто обновляю экран, достаточно ли информации в URL-адресе (включая queryParams) для создания модели «Route»? –

+0

Чтобы уточнить мой комментарий, см. [Эту страницу] (http://guides.emberjs.com/v1.11.0/routing/#toc_routing). Цитата: 'В Ember.js каждое из возможных состояний вашего приложения представлено URL-адресом. Потому что все вопросы, которые мы задали выше, мы вошли в систему? На какой пост мы смотрим? - инкапсулированы обработчиками маршрутов для URL-адресов, ответ на них прост и точен. ' –

+0

Вам придется простить меня, я все еще здесь учился. Отвечает ли мой вопрос на ваш вопрос? Спасибо – rjoxford

ответ

1

Не все на вашей странице должно быть в маршруте model. Например, у вас может быть Route, который содержит объект Unit. Для того, чтобы получить список всех Objective объектов, можно добавить простое свойство к вашим controller:

allObjectives: function() { 
    return this.store.find('objective'); 
}.property() 

Ваш шаблон может затем сделать модель, как обычно:

<div>Unit name: {{model.name}}</div> 
<div>All objectives: 
    <ul> 
    {{#each objective in allObjectives}} 
     <li>{{objective.name}}</li> 
    {{/each}} 
    </ul> 
+0

Нужен .property() в конце. Спасибо за вашу помощь! – rjoxford

+1

Я обновил свой ответ, thx. –

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