我通过XHR请求将api中的组列表拉入我的Ember应用程序。我试图在groups / index.hbs模板中显示该列表。在模板中我有:
<h1>GROUPS INDEX</h1>
{{#each group in controller}}
{{ group.name }}
{{/each}}
{{outlet}}
我收到以下错误:
Uncaught Error: assertion failed: an Ember.CollectionView's content must implement Ember.Array. You passed <(generated groups.index controller):ember226>
对象数组正在加载正常。我只是不能把它们放在把手里。
我错过了什么?
修改
groups_route.js.coffee
Mdm.GroupsRoute = Ember.Route.extend(model: ->
Mdm.Group.all()
)
router.js.coffee
Mdm.Router.map ->
@resource 'groups', ->
@resource 'group', path: ':group_id'
Mdm.Router.reopen
location: 'history'
group.js.coffee
Mdm.Group = Ember.Object.extend()
Mdm.Group.reopenClass
all: ->
Mdm.ajax(
url: Mdm.apiUrl('/groups')
).then (data) ->
console.log data
groups = []
for group in data.response
groups.addObject(Mdm.Group.create(group))
console.log(groups)
groups
答案 0 :(得分:1)
在所有评论之后,对于其他任何绊倒此错误的人,我都会发布一个答案。
因此,解决方案是将您的路线重命名为:
Mdm.GroupsIndexRoute = Ember.Route.extend(model: ->
Mdm.Group.all()
)
很高兴我能提供帮助:)。