我已经在谷歌上搜索了一段时间,但还没有找到任何好的解决方案。
问题的根源是isDirty
使用此方法时没有设置我的记录:
DS.JSONTransforms.object = {
deserialize: function(serialized) {
return Ember.isNone(serialized) ? {} : serialized;
},
serialize: function(deserialized) {
return Ember.isNone(deserialized) ? {} : deserialized;
}
}
据我所知,这是一个显然仍然有效的旧方法,因为它处理我扔给它的 JSON 对象,但isDirty
在进行编辑时它没有设置我的记录。
您现在应该使用的是registerTransform
您的适配器(根据此https://github.com/emberjs/data/issues/517)。但是我的自定义转换没有被注册,所以我想我把它放在了错误的地方(与我之前的 JSONTransforms 相同的地方)。
DS.RESTAdapter.registerTransform('object', {
deserialize: function(serialized) {
return Em.none(serialized) ? {} : serialized;
},
serialize: function(deserialized) {
return Em.none(deserialized) ? {} : deserialized;
}
});
有没有人有这方面的知识分享?