未捕获错误:断言失败:您可能不会将`id`设置为模型上的属性

时间:2014-07-03 16:30:45

标签: ember.js ember-data

完整错误:

Uncaught Error: Assertion Failed: You may not set `id` as an attribute on your model. Please remove any lines that look like: `id: DS.attr('<type>')` from App.Plan

Ember模特:

App.Plan = DS.Model.extend({
id: DS.attr('number'),
name: DS.attr('string'),
period: DS.attr('number'),
price: DS.attr('number')
});

来自REST API的数据:

{"plans":[{"id":1,"name":"Monthly subscription","period":1,"price":2}]}

问题:如何解决上述错误?

1 个答案:

答案 0 :(得分:10)

只需忽略id中的DS.Model属性即可。 Ember-data会自动为您处理。您仍然可以使用id找到记录,当您从Ember应用程序中访问它时,它将成为对象的属性。 See herehere了解详情。

App.Plan = DS.Model.extend({
  name: DS.attr('string'),
  period: DS.attr('number'),
  price: DS.attr('number')
});