diff --git a/src/models/json-api.model.ts b/src/models/json-api.model.ts index 7c7e193a..e2ca8145 100644 --- a/src/models/json-api.model.ts +++ b/src/models/json-api.model.ts @@ -198,7 +198,7 @@ export class JsonApiModel { return peek; } - const newObject: T = new modelType(this._datastore, data); + const newObject: T = this._datastore.deserializeModel(modelType, data); this._datastore.addToStore(newObject); return newObject; diff --git a/src/services/json-api-datastore.service.ts b/src/services/json-api-datastore.service.ts index 20ceae06..eeefab4d 100644 --- a/src/services/json-api-datastore.service.ts +++ b/src/services/json-api-datastore.service.ts @@ -276,7 +276,7 @@ export class JsonApiDatastore { return models; } - protected deserializeModel(modelType: ModelType, data: any) { + public deserializeModel(modelType: ModelType, data: any) { data.attributes = this.transformSerializedNamesToPropertyNames(modelType, data.attributes); return new modelType(this, data); }