У меня есть маршрут создать который вытягивает информацию о счете из REST конечной точки:ember.js: Цикл по данным ArrayController в неассоциированной View
Social.Router.map(function() {
this.resource('accounts');
});
Social.AccountsRoute = Ember.Route.extend({
model: function() {
return Social.Account.find();
}
});
Social.Account = DS.Model.extend({
name: DS.attr('string'),
username: DS.attr('string')
});
Social.AccountsController = Ember.ArrayController.extend();
я могу цикл по этим данным в моем шаблоне, как так:
<script type="text/x-handlebars" data-template-name="accountItem">
{{#each account in controller}}
<div class="avatar-name">
<p>{{account.name}}</p>
<p>{{account.username}}</p>
</div>
{{/each}}
</script>
У меня есть другой шаблон, в котором я хотел бы использовать те же данные учетной записи. Как получить информацию, связанную с моделью учетной записи, из представления, чтобы я мог сделать ее доступной в соответствующем шаблоне?
Social.NewPostView = Ember.View.extend({
tagName: 'div',
accounts: function(){
// return Account data here?
}
});
Update 1
Слева "живые" данные учетной записи. Справа находится статический HTML. Я хотел бы повторно использовать данные слева справа. Имеют смысл?
Если у вас есть новое представление, вложенное под одним выше, вы должны иметь доступ к его контексту. Можете ли вы более подробно описать свой интерфейс и маршруты? Вам нужно то же самое «find.all» снова в вложенном представлении, или вам просто нужен интерфейс, чтобы продолжать показывать массив, пока вы показываете что-то еще? –