![](/img/trans.png)
[英]Ember - How to pass a property from Routes file to a Handlebar template with 401 returned
[英]In Ember how do I access an attribute from a different model from the current handlebar in the html file?
我正在嘗試做類似的事情:
{{#if model.user.isAdmin}}
<div>
My name is {{model.user.name}}
</div>
{{/if}}
在與用戶無關的控制器的車把內:
<script type="text/x-handlebars" data-template-name="events/new">
我將如何處理? 如何使用/顯示其他模型的值?
這可以通過幾種方式來完成。
如果您的新事件路由是子路由,例如用戶路由(嵌套在路由器中),則可以執行以下操作:
// events/new controller
Ember.Controller.extend({
needs: ['user'] // a reference to the user controller
});
// events/new template
{{ controllers.user.model.name }}
如果不是子路由,則可以通過調用商店來訪問用戶模型:
// events/new route
Ember.Route.extend({
// use the user model as your model
model: function() {
// load a user by its id, or remove the id to load all users
return this.store.find('user',1);
}
});
// events/new template
{{ model.name }}
或者,您可以在events/new
路線中使用多個模型:
// events/new route
Ember.Route.extend({
// return multiple models
model: function() {
return Ember.RSVP.hash({
event: this.store.createRecord('event', {
// add event properties here if needed
}),
user: this.store.find('user',1),
...
});
}
});
// events/new template
{{ model.user.name }}
如您所見,這取決於路線和應用程序結構的關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.