Ember.js具有Many/belongsTo自定义外键

jei2mxaa  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(148)

我想添加一个employeebelongsTo 一个business和一个businesshasManyemployees关系,但是foreign keybusinessId而不是business_id。我可以在哪里配置Ember以允许businessId作为外键?
实际上,我如何使modelId成为所有外键的格式?
我们使用的是Ember data 1.13ember-cli 1.13
controllers/employee.js

import DS from 'ember-data';

export default DS.Model.extend({
  business: DS.belongsTo('business', { async: true })
});

controllers/business.js

import DS from 'ember-data';

export default DS.Model.extend({
  employees: DS.hasMany('employee', { async: true })
});
olmpazwi

olmpazwi1#

您可以实现一个custom serializer来转换JSON有效负载中所需的键,以匹配模型中定义的属性:

//in app/serializers/employees
  import Ember from 'ember';
  import DS from 'ember-data';

  export default DS.RESTSerializer.extend({
    normalizeHash: {
      employees: function(hash) {
        hash.business_id = hash.businessId;
        delete hash.businessId;
      return hash;
    }
  }
  });

相关问题