7

バグトラッカーを想像してみてください。

各チケットには多くのデータが含まれています。これで、チケットの長いリストからいくつかのチケットのステータスが更新されました。

App.Ticket = DS.Model.extend({
    id: DS.attr('number'),
    status: DS.attr('string'),
    ...
});

save現在、ember-data で呼び出すと、完全なモデルがサーバーに送信されます。

のように、部分的な更新のみを送信するにはどうすればよい[{"id": 1, "status": "closed"}, {...}]ですか?

PS: 現時点ではこれが不可能であることは理解していますが、これを可能にする回避策/変更があるかどうか疑問に思っています。(汎用ソリューションは必要ありません)。

4

2 に答える 2

3

私の現在の回避策はreadOnly、POST で送信したくない属性を除外するオプションを指定することです。

詳細はこちら: https://github.com/emberjs/data/pull/303#issuecomment-13993905

于 2013-03-08T08:45:30.037 に答える
1

私もこれを調べていましたが、これをすべての保存に適用したい場合は、今日、次のようなシリアライザーで修正しますserializers/ticket.js

import DS from 'ember-data';

export default DS.RESTSerializer.extend({
  attrs: {
    status: {serialize: false}
  }
});

これは取り除かれstatusます。

于 2015-08-10T12:38:13.757 に答える