使用ember-data find()和多个参数返回单个记录

时间:2012-09-03 13:52:10

标签: ember.js ember-data

我试图在其他参数上进行查找(使用余烬数据)而不是id,实际上是两个参数。

但我回来的是:

"Uncaught Error: assertion failed: Your server returned a hash with the key customer but you have no mappings".

在代码中挖掘后,我发现当给定哈希值时,find方法会委托给 findQuery 方法,这会产生 DS.AdapterPopulatedRecordArray ,但我只返回一个我的json中的单个客户对象:

{"customer":{
"id":24857,"name":"Kim Fransman","id_number":"XXXX","email":"email@domain.com","type":"Person"}}

我可以通过将json包装在customers数组中并在我的Handlebars视图中循环遍历来解决这个问题,但这感觉非常错误。

今天有没有办法用ember-data做到这一点?

1 个答案:

答案 0 :(得分:3)

我有类似的问题,我在这里提出了一个问题。基本上这是RESTAdapter的一个未记录的属性,您必须根据您的模型进行配置。你必须以类似的方式定义它:

App.Store = DS.Store.extend({
  adapter: DS.RESTAdapter.create({
    bulkCommit: true,
    mappings: {
      // All your models will have to have a mapping defined,
      // like this...
      genres: 'App.Genre'
    }
  }),
  revision: 4
});

点击此处查看我的问题:Ember-Data: How do "mappings" work

我希望它有所帮助。