Ember RESTAdapter没有填充我的商店

时间:2013-11-30 09:20:40

标签: javascript ember.js ember-data

我正在尝试编写一个基于RESTful API的简单ember应用程序。我的代码看起来像这样:

store.js.coffee

DS.RESTAdapter.reopen
  namespace: 'api/v1'

EmberClient.Store = DS.Store.extend
  adapter: DS.RESTAdapter.create()

路由/ songs.js.coffee

EmberClient.SongsRoute = Ember.Route.extend
  model: ->
    @get('store').findAll('Song')

模型/ song.js.coffee

EmberClient.Song = DS.Model.extend
  title: DS.attr('string')

api回复:

{"songs":[{"id":10,"title":"Intro"},{"id":12,"title":"Fantasy"}]}

问题是,我无法在模板中循环结果,因为存储为空。对我的API的请求被触发,返回api响应,但EmberInspector说,EmberClient.Song有0条记录。

1 个答案:

答案 0 :(得分:1)

您有一些错误

1-将您的商店定义更改为adapter: DS.RESTAdapter而不是adapter: DS.RESTAdapter.create()

EmberClient.Store = DS.Store.extend
  adapter: DS.RESTAdapter

如果删除上面的代码也会有效,因为默认情况下使用DS.RESTAdapter

2 - 使用findAll('song')代替findAll('Song')

这是一个有效的http://emberjs.jsbin.com/ItujOnO/1/edit

的jsbin