私はEmber.jsで単純なコントローラーを作成しました.Personをストアに追加し、RESTアダプターでサーバーに保存し、IDを取得して行をIDで更新します。
私のコードは次のようになります。
App.AddPersonController = Ember.ObjectController.extend({
newRecord: function() {
currentRecord = App.Person.createRecord({name: "Abraham"});
this.set('content', currentRecord );
}
save : function() {
var result = this.get('store').commit();
this.transitionToRoute('people.list');
return result;
}
});
newRecord() を呼び出すと、Abraham で新しいレコードが作成されます。次に、ユーザーが名前を編集できるようにします。彼が保存をプッシュした後、次のようにテンプレートから保存機能を呼び出します。
{{action save on="submit"}}
新しいレコードはデータベースに 1 つの行として正しく保存されます。ユーザーはユーザー リストにリダイレクトされます。しかし突然、人のリストにエイブラハムが重複しているように見えます。
ストアを調査したところ、同じデータと同じ ID を持つ 2 つの行があります。ユーザーIDが異なります。データベースには1行しかありません。
この場合、Ember.js によって追加された行が重複しないようにするにはどうすればよいでしょうか?