序列化下划线属性ember-data

时间:2014-05-31 00:12:20

标签: javascript ember.js ember-data

我的系列工作正常,适用于下划线属性。来自服务器的JSON的结构是:

var services = {
    services:[{
      id:8,
      name:"Codin'",
      service_category:{
        id:5,
        iso_code:"BDT",
        prop:"Ohmmmm"
      }
    },
      {
      id:7,
      name:"PR",
      service_category:{
        id:2,
        iso_code:"SFD",
        prop:"Naraya"
      }
    }] 
  };

序列化后,有效负载如下所示:

var services = {
    services:[{
      id:8,
      name:"Codin'",
      service_category:5
    },
      {
      id:7,
      name:"PR",
      service_category:2
    }],
    serviceCategories:[{
        id:5,
        iso_code:"BDT",
        prop:"Ohmmmm"
      },
     {
        id:2,
        iso_code:"SFD",
        prop:"Naraya"
      }
    ]
  };

但是在模板中我无法访问serviceCategory的道具

模特

App.Service = DS.Model.extend({
    name: DS.attr('string'),
    serviceCategory: DS.belongsTo('serviceCategory')
});

App.ServiceCategory = DS.Model.extend({
    iso_code: DS.attr('string'),
    prop:DS.attr()
});

以下是JsBin:http://jsbin.com/OxIDiVU/565

1 个答案:

答案 0 :(得分:1)

您的json在服务中有service_category作为属性名称。

简单的解决方法是:

App.Service = DS.Model.extend({
    name: DS.attr('string'),
    service_category: DS.belongsTo('serviceCategory')
});

 <td>{{item.service_category.prop}} </td>

http://jsbin.com/OxIDiVU/570/edit