Ember模型映射与服务器响应

时间:2014-08-19 05:54:36

标签: ember.js asp.net-web-api

我使用asp.net web api获取JSON响应。

public class Artist
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public int Age { get; set; }

    }

我的余烬模型看起来像这样

Music.Artist = DS.Model.extend({
    name:DS.attr('string'),
    age:DS.attr('number')
});

由于它的情况,它不是映射。当我在服务器端制作我的模型时,请输入名称'而不是'姓名'有用。我是否也需要照顾套管,或者有一些方法。

另一件事,它总是需要id,如果我有另一个名字的id,例如。 artist_id

1 个答案:

答案 0 :(得分:1)

您可以覆盖ember-data处理属性键和id的方式。

要更改属性键覆盖keyForAttribute方法,attr是您的模型属性,返回值是来自json的相关键。因为你想要处理" name" as"姓名",Ember.String.capitalize将完成工作。

要更改ID,只需覆盖primaryKey属性。

以下是自定义序列化程序

App.ApplicationSerializer = DS.RESTSerializer.extend({
  primaryKey: 'Id',
  keyForAttribute: function(attr) { 
    return Ember.String.capitalize(attr);
  }
});

可以在http://emberjs.jsbin.com/OxIDiVU/950/edit

中找到包含此代码的实时示例
相关问题