从服务器规范化json

从服务器规范化json,json,api,ember.js,ember-data,ember-cli,Json,Api,Ember.js,Ember Data,Ember Cli,我正试图规范化服务器上的一些非常规json数据,以便在ember中使用 json响应如下所示 { "pagingAndSorting": { "pageSize": 2, "ascending": false, "pageNumber": 5 }, "list": [ { "recommendedDosage": "400mg Tablets", "active": true, "name": "ANT-Norfloxacin", "id

我正试图规范化服务器上的一些非常规json数据,以便在ember中使用

json响应如下所示

{
   "pagingAndSorting": {
   "pageSize": 2,
   "ascending": false,
   "pageNumber": 5
},
"list": [
 {
    "recommendedDosage": "400mg Tablets",
    "active": true,
    "name": "ANT-Norfloxacin",
    "id": "FE102EDA-984A-41A3-B9C8-3E13B98A864A",
    "identifiers": []
  },
  {
     "recommendedDosage": "",
     "active": true,
     "name": "ANT-Penicillin Injection",
     "id": "F8DE6184-0F91-4DA9-A611-2B78F4B85D25",
     "identifiers": []
  },
  {
     "recommendedDosage": "",
     "active": true,
     "name": "ANT-Spectinomycin",
     "id": "73205995-0CF2-4744-A856-F74B81355661",
     "identifiers": []
  }],
  "fullListSize": 574
}

我创建了以下模型

在app/model/paging-and-sorting.js中

import DS from 'ember-data';

export default DS.Model.extend({
  pageNumber : DS.attr('number',{defaultValue: 0}),
  pageSize : DS.attr('number',{defaultValue: 40}),
  ascending : DS.attr('boolean', {defaultValue: false})
});

在app/models/medicine.js中 从“余烬数据”导入DS

export default DS.Model.extend({
  name: DS.attr('String'),
  identifiers: DS.attr(''),
  active: DS.attr('Boolean',{defaultValue: true}),
  id: DS.attr('String'),
  recommendedDosage : DS.attr('String')
});

在app/models/medicine-list.js中

import DS from 'ember-data';

export default DS.Model.extend({
  pagingAndSorting: DS.belongsTo('paging-and-sorting'),
  list: DS.hasMany('medicine'),
  fullListSize: DS.attr('number')
});
在app/serializers/medicine-list.js中,我有

import DS from 'ember-data';

//For the embedded Ember model
export default DS.JSONSerializer.extend(DS.EmbeddedRecordsMixin, {
  attrs: {
    pagingAndSorting : { embedded: 'always' },
    list: { embedded: 'always' }
  }
});
但这似乎不起作用。我没有在控制台中看到任何错误,但是当我使用余烬数据检查时,似乎没有数据进入余烬存储

我错过了什么明显的东西吗? 有人有其他解决方案/方法吗


谢谢你的帮助

我不会把你的页码放进你的模型里。这就是
元数据
的作用,看你是对的。但这就是我使用的api,我无法控制它。我试图找到一些解决方法。我担心除了滚动您自己版本的REST适配器之外,没有其他解决方案。这是一些很好的信息。我想这是我必须走的路。谢谢