想象一下错误跟踪器。
每张票都包含大量数据。现在更新了一长串票证中的几张票的状态。
App.Ticket = DS.Model.extend({
id: DS.attr('number'),
status: DS.attr('string'),
...
});
目前,当在ember-data中调用save
时,这会将完整的模型发送到服务器。
我只能发送部分更新,例如[{"id": 1, "status": "closed"}, {...}]
?
PS:我知道现在这是不可能的,所以我想知道是否有解决方法/修改可以实现这一点? (不需要通用解决方案。)
答案 0 :(得分:3)
我目前的解决方法是指定一个readOnly
选项,该选项排除我不希望在POST中发送的属性。
详情请见:https://github.com/emberjs/data/pull/303#issuecomment-13993905
答案 1 :(得分:1)
我也在研究这个问题,如果您希望将其应用于所有保存,那么今天您可以使用serializers/ticket.js
等序列化程序修复它:
import DS from 'ember-data';
export default DS.RESTSerializer.extend({
attrs: {
status: {serialize: false}
}
});
这会剥离status
。