@zardaloop wrote:
Here is the issue I have when I call ds.store.query my server returns data like this :
{
"Job": [
{
"Customer_Name": {
"Primary_Key": "Customer1",
"Contact": "Contact 1"
}
}
]
}but if I call it using for examle ds.findAll it returns like this :
{
"Job": [
{
"Customer_Name": "Customer1"
}
]
}so it means the Customer_Name which here is the foreign key or in ember world belong-to type to the customer table does not get resolved.
So I am trying to define a pattern to deal with both scenario in the app//serializer/application.js file using propabbly normalizeQueryResponse to serialize data when ds.store.query is called.
Because I can't define a serializer for Job model when there is two different scenarios for serializing the data, can I ?Could someone please advise what should I do ?
this is what I have so far but it doesnt work :
normalizeQueryResponse(store, primaryModelClass, payload, id, requestType) {
console.log(payload);function getListOfkeys(payload) { var list = []; payload.forEach(function (item) { for (var key in item) { if (item.hasOwnProperty(key)) { if (item[key] !== null && typeof item[key] === 'object') { list.pushObject(key); } } } }, this); return list; } var keys = getListOfkeys(payload[Ember.String.capitalize(primaryModelClass.modelName)]); if (keys.length > 0) { let attrs = {}; keys.forEach(function (key) { attrs[key] = { serialize: 'records', deserialize: 'records' } }, this); Ember.getOwner(store).registry.register('serializer:' + Ember.String.dasherize(primaryModelClass.modelName), DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, { attrs: attrs })); } var normaliszedResponse = this._normalizeResponse(store, primaryModelClass, payload, id, requestType, true); return normaliszedResponse;
},
Many thanks in advance
Posts: 1
Participants: 1