ember EmbeddedRecordsMixin

时间:2018-03-02 20:43:42

标签: ember.js ember-data

适配器/ foodoption.js

import DS from 'ember-data';

export default DS.RESTAdapter.extend({
  buildURL: function (modelType, id) {
    return 'http://localhost:8080/getData' ;
  },
  handleResponse: function(status, headers, payload) {
   payload = {foodoptions: payload};
   return this._super(status, headers, payload);
  }
});

模型/ foodoption.js

import DS from 'ember-data';

export default DS.Model.extend({
    responsetype: DS.attr(),
    responselists:DS.hasMany('responselist', { embedded: 'always' })
});

模型/ responselist.js

import DS from 'ember-data';

export default DS.Model.extend({
    description: DS.attr(),
    deleted:DS.attr()
});

串行器/ foodoption.js

import DS from 'ember-data';

export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
  attrs: {
    responselists: {embedded: 'always'}
  }
});

来自服务器的响应:

{  
   "id":100,
   "responsetype":"FOOD",
   "responselist":[  
      {  
         "id":1,
         "description":"One",
         "deleted":"N"
      },
      {  
         "id":2,
         "description":"Two",
         "deleted":"N"
      },
      {  
         "id":3,
         "description":"Three",
         "deleted":"N"
      }
   ]
}

问题:当我执行this.store.findAll('foodoption')时,只在模型中加载了响应类型,而不是从服务器响应中加载响应者。

我错过了什么吗?

0 个答案:

没有答案