新しいモデルが RESTAdapter で作成および保存されると、バックエンドが ID 生成を担当するため、その Id プロパティは未定義になります。したがって、グリッドに戻ると、同じエンティティが 2 つあります。1 つ目は空の Id (RESTAdapter キャッシュからだと思います) で、2 つ目はバックエンドから返された正しい ID です。
何か案は?RESTAdapter キャッシュを無効にすることは可能でしょうか?
アップデート
エンティティ作成のための私のコード。
submit:function () {
var manager = App.store.createRecord(App.Manager, {
firstName:this.get('firstName'),
lastName:this.get('lastName'),
speciality:this.get('speciality')
});
App.store.commit();
this.get('controller').transitionTo('managers');
return false;
}
新しいアップデート
Mike Grassotti のヒントに感謝します。ここに私の問題の詳細があります。
- あるアンチティには ID があり、別のアンチティには ID がありません。
- App.store.commit() コードを削除すると、サーバーへの POST はなく、ID のないエンティティのみが表示されます。
- このエンティティには、isLoaded=false と isError=true があります。