1

と の 2 つのモデルにアクセスできる JSON API があるcatsとしdogsます。ただし、私の Ember アプリケーションでは、モデルは 1 つしかありません: animals.

save()であるたびにanimalとして API に POST されますが、他のモデルでリンクされたcatを受け取った場合は、ember-data としてローカルに保存する必要があります。doganimal

これを達成するための最も首尾一貫した方法は何でしょうか? ありがとうございました!

4

2 に答える 2

1

修理済み。今後の参考のために、モデルのエイリアスを作成して ApplicationSerializer を拡張することができます (この場合、モデルはであり、API でモデルanimalを使用するアダプターがありましたが、モデルを asとして解析する必要がありました)。良い):catdoganimal

App.ApplicationSerializer = DS.ActiveModelSerializer.extend({
  typeForRoot: function(root) {
    if (root == 'dog' || root == 'dogs') { root = 'animal'; }
    return this._super(root);
  }
);
于 2015-02-12T15:59:11.957 に答える
0

REST アダプターをカスタマイズすることで、目的を達成できるはずです。具体的には、メソッドをオーバーライドして、buildURLcats渡されたレコードのタイプを検出し、この特定のモデルをエンドポイントまたはエンドポイントに永続化する必要があるかどうかを決定するロジックに基づいて渡される URL を構築することを検討してくださいdogs

于 2015-02-12T15:32:15.943 に答える