【问题标题】:return single record with ember-data find() and multiple params使用 ember-data find() 和多个参数返回单个记录
【发布时间】:2012-08-28 06:29:44
【问题描述】:

我正在尝试对除 id 之外的其他参数进行查找(使用 ember-data),实际上是两个参数。

但我得到的只是:

"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 包装在一个客户数组中并在我的把手视图中循环它们来解决这个问题,但这感觉很不对。

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

【问题讨论】:

    标签: ember.js ember-data


    【解决方案1】:

    我有一个类似的问题,我在这里提出了一个问题。基本上,这是 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

    希望对你有帮助。

    【讨论】:

    • 谢谢!现在我不再使用该代码,但这可能会帮助其他谷歌搜索的人!
    • 我不确定您使用的是哪个版本,但在关系改进分支上,似乎需要在映射对象中引用 DS Model 类,例如mappings: { genres: 'App.Genre' }.
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-02
    相关资源
    最近更新 更多