在车把模板中显示具有许多余烬关系的第一项
Display the first item in hasMany ember relationship in handlebars template
我需要显示具有许多关系中的第一项
基本上一个线程可以有多个作者,但我只需要在特定模板中显示第一个作者
我有以下json
{
threads: [
{
id: 1,
authors: [2,3]
}
],
authors: [
{
id: 2,
fullname: "foo"
},
{
id: 3,
fullname: "bar"
}
]
}
以及以下型号
App.Thread = DS.Model.extend({
authors: DS.hasMany('author')
});
App.Author = DS.Model.extend({
fullname: DS.attr('string')
});
现在在我的模板中,我想做一些类似{{thread.authors[0].fullname}}
的事情,但它不起作用。我也尝试了根据车把语法thread.authors.0.fullname
,但没有任何变化。
提前感谢您的帮助
使用 Ember.Enumerable 的firstObject
:
{{thread.firstObject.fullName}}
如果要在很多地方使用它,最好将其定义为模型中的计算属性:
App.Thread = DS.Model.extend({
authors: DS.hasMany('author')
firstAuthor: Ember.computed.alias('authors.firstObject')
});
并在模板中将其用作:
{{firstAuthor.name}}
相关文章:
- 如何从对象数组中获取最后一项
- 为什么只有最后一项显示,而不是全部显示
- 删除最后一项jquery
- $q.all当输入数组中的一项不是promise时,Typescript检查器失败
- 为什么我的“for”循环只获取 html 中的最后一项
- 我无法将下拉列表的默认值设置为最后一项
- 流星批量插入仅插入最后一项
- 我怎么能知道元素是最后一项
- 如何删除WinJS组绑定列表的最后一项
- 在immutable.js中更改列表中的一项
- 使用handlers.js模板以数组中的最后一项为条件
- empty().append()追加循环中的最后一项
- jQuery只附加最后一项
- 将属性添加到 for 循环中的最后一项
- 我的应用仅显示一项检索到的数据
- 如何在 visjs 时间轴中按时间顺序获取 getVisibleItems(或如何获取上一项)
- 滑动视图 - 显示下一项的预览/片段
- 检查单词是否具有相同的字母 - 错过一项测试
- 如何按排序键顺序获取对象中的最后一项
- for 循环中的 addEventListener 始终添加到最后一项