是“反序列化”和“规范化”同一件事还是存在差异?一个直截了当的问题。我相信这对前端模型与后端数据库源/ API的通信是通用的。但如果没有,这是在Ember Data的背景下。
答案 0 :(得分:2)
存在差异。当你去除deseralize你的意图是改变从一种形式说javascript对象并将其转换为另一种形式说一个ember-data模型。当您规范化时,您的意图是操纵当前表单的数据和/或结构。
因此,对于ember-data,您RESTSerializer
使用:
将这两件事放在上下文中,来自JSONSerializer上applyTransforms方法的文档(这是转换在普通javascript对象上工作的地方):
给定一个
DS.Model
的子类和一个JSON对象,这个方法会 遍历DS.Model
的每个属性并调用 关于匹配属性的DS.Transform#deserialize
方法 JSON对象。通常在此方法之后调用此方法 序列化程序的normalize
方法。