Ember.js 试图在Handlebar中显示来自XHR请求的api数据

Ember.js 试图在Handlebar中显示来自XHR请求的api数据,ember.js,Ember.js,我正在通过一个XHR请求将一个组列表从api拉到我的Ember应用程序中。我试图在groups/index.hbs模板中显示该列表。在模板中,我有: <h1>GROUPS INDEX</h1> {{#each group in controller}} {{ group.name }} {{/each}} {{outlet}} router.js.coffee Mdm.GroupsRoute = Ember.Route.extend(model: -> M

我正在通过一个XHR请求将一个组列表从api拉到我的Ember应用程序中。我试图在groups/index.hbs模板中显示该列表。在模板中,我有:

<h1>GROUPS INDEX</h1>
{{#each group in controller}}
  {{ group.name }}
{{/each}}
{{outlet}}
router.js.coffee

Mdm.GroupsRoute = Ember.Route.extend(model: ->
  Mdm.Group.all()
)
Mdm.Router.map ->
  @resource 'groups', ->
    @resource 'group', path: ':group_id'

Mdm.Router.reopen
  location: 'history'
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
groupjs.coffee

Mdm.GroupsRoute = Ember.Route.extend(model: ->
  Mdm.Group.all()
)
Mdm.Router.map ->
  @resource 'groups', ->
    @resource 'group', path: ':group_id'

Mdm.Router.reopen
  location: 'history'
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

在所有的评论之后,对于遇到这个错误的其他人,我将发布一个答案

因此,解决方案是将路线重命名为:

Mdm.GroupsIndexRoute = Ember.Route.extend(model: ->
  Mdm.Group.all()
)

很高兴我能提供帮助:)

您的循环控制器看起来怎么样?它只是使用自动生成的控制器。您是否尝试过像
App.GroupsIndexController=Ember.ArrayController.extend()那样显式定义它?是的。我收到了相同的错误。请再试一次:)由于您有嵌套的资源,您是否尝试将组路由重命名为
Mdm.GroupsIndexRoute