【问题标题】:serialize underscored property ember-data序列化带下划线的属性 ember-data
【发布时间】:2014-05-31 13:23:27
【问题描述】:

我的序列化器工作正常,除了下划线的属性。来自服务器的 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"
      }
    }] 
  };

序列化后的payload如下所示:

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

【问题讨论】:

    标签: javascript ember.js ember-data


    【解决方案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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-13
      相关资源
      最近更新 更多