5

Ember Data はバージョンからバージョンへと急速に移行しており、データの保存方法もそれに伴って変化しています。現在、バージョン 1.0.0-beta.8.2a68c63a では、レコードを更新してから record.save() を実行し、PUT リクエストをサーバーに戻すのが適切な方法です。現在のアプリでは、一度に複数のレコードを更新していますが、これには 50 以上の PUT ajax リクエストがサーバーに返される可能性があります。パフォーマンスと効率の問題が懸念されており、バッチ リクエストの実行に関するドキュメントは見つかりませんでした。どちらかといえば、同じことをしようとしていて、良い解決策を見つけていない他の多くの人々をオンラインで見つけました.

現在、これらのオブジェクトを手動でシリアライズしてサーバーに保存する方法を検討しています。これが Ember Data の要点だと思いました。したがって、Ember Data をまったく使用せず、CRUD リクエストを手動でコード化し、これらすべてを処理するための独自のデータ レイヤーを作成し、ArrayControllers と ObjectControllers を使用してデータを保存し、Handlebars テンプレートにバインドすることが、私の最大の関心事かもしれません。これの利点は、必要な方法で機能し (バッチ要求)、コードが Ember Data の将来のバージョンで壊れないことです。考えや解決策はありますか?

4

1 に答える 1

1

でそれを行うことができますDS.EmbeddedRecordsMixin。Page オブジェクトに (たとえば、コメントに基づいて) 多くのブロックがある場合、次のpage-serializer.jsようになります。

import DS from 'ember-data';

export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
  attrs: {
    blocks: { serialize: 'records' }
  }
});

ページ レコードを保存すると、関連するすべてのブロック レコードがその 1 つの PUT 要求に含まれます。

こちらのドキュメントを参照してください。

于 2015-10-29T17:31:58.657 に答える