2015-07-19 45 views
3

我想補充一個employee屬於關聯一個businessbusiness的hasManyemployees關係,但foreign keybusinessId而不是business_id。我在哪裏可以配置Ember以允許businessId成爲外鍵?Ember.js的hasMany /屬於關聯定製外鍵

事實上,我怎樣才能讓modelId所有外鍵的格式?

我們使用Ember data 1.13ember-cli 1.13

控制器/ employee.js

import DS from 'ember-data'; 

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

控制器/ business.js

import DS from 'ember-data'; 

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

回答

2

您可以實現一個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; 
    } 
    } 
    });