gpt4 book ai didi

ember.js - Ember Data - 保存记录丢失有很多关系

转载 作者:行者123 更新时间:2023-12-02 16:26:03 25 4
gpt4 key购买 nike

我在使用 Ember 数据夹具适配器时遇到问题。保存记录时,该记录的所有 hasMany 关联都会丢失。我创建了一个简单的 JS Bin 来说明该问题:http://jsbin.com/aqiHUc/42/edit

如果您编辑任何用户并保存,所有项目都会消失。

这是使用 Ember 1.0.0 和 Ember Data 的最新金丝雀版本。

我不确定我是否做错了什么,或者这是否是 Ember 数据的问题。

谢谢

最佳答案

为了回答我的问题,DS.JSONSerializer.serializeHasMany似乎只处理和序列化manyToNone和manyToMany关系类型。您可以通过使用模型的自定义序列化器来覆盖此行为:

var get = Ember.get;
App.UserSerializer = DS.RESTSerializer.extend({
serializeHasMany: function(record, json, relationship) {
var key = relationship.key;

var relationshipType = DS.RelationshipChange.determineRelationshipType(record.constructor, relationship);

if (relationshipType === 'manyToNone' || relationshipType === 'manyToMany' || relationshipType === 'manyToOne') {
json[key] = get(record, key).mapBy('id');
}
}
});

仍然不太确定这是否是一个错误或者这是否是期望/预期的行为。

关于ember.js - Ember Data - 保存记录丢失有很多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19093078/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com