目前我有这样的模型设置

App.Specialty = DS.Model.extend({
    //specialty_id: attr(),
    name: attr()
});

它有一个称为specialty_id而不是id的json API返回的primaryKey( Ember 数据可能期望的)。

因此,不摆弄任何 Ember 数据会得到两个对象,其中一个对象使用id作为任何参数,第二个对象使用正确的对象,但id为未定义。

如何让 Ember 数据知道它应该搜索specialty_id

最佳答案

对于整个应用

App.ApplicationSerializer = DS.RESTSerializer.extend({
  primaryKey: '_id'
});

对于单一类型
App.FooSerializer = DS.RESTSerializer.extend({
  primaryKey: '_id'
});

您仍将在模型上将其称为id,但是在传输过程中,Ember Data会将其序列化/反序列化为_id

示例:http://emberjs.jsbin.com/OxIDiVU/635/edit

在此处了解更多信息:http://emberjs.com/api/data/classes/DS.RESTSerializer.html#property_primaryKey

07-24 20:56