2015-07-19 4 views
3

Я хотел бы добавить employeebelongsTo а и businesshasManyemployees отношения business но foreign key является businessId вместо business_id. Где я могу настроить Ember, чтобы businessId был внешним ключом?ember.js hasMany/belongsTo пользовательских внешний ключ

На самом деле, как я могу сделать modelId формат для всех внешних ключей?

мы используем Ember data 1.13, ember-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; 
    } 
    } 
    }); 
Смежные вопросы