ember データを使用して属している関係を設定するのが困難です。実証するjsfiddleの例があります。私の最初の問題は、次のエラーが発生していたことです。
Uncaught Error: <DS.StateManager:ember5035> could not respond to event loadedData in state rootState.loaded.updated.inFlight.
これは、選択を使用してモデルの属している関係を更新したときにのみ発生しました。それは、Ember Data のビルトイン RestAdapter を使用していました。現在の例では、FixtureAdapter を使用していますが、変更を保持できないようです (フィドルをチェックアウトして本の名前を編集すると、元の名前に戻っていることがわかります)。「サーバーの応答」がアダプターによってシミュレートされるとすぐに元に戻るように見えますか? 適切なサーバー応答をシミュレートする方法はありますか?
また、ここでの問題は、データ ストア トランザクションの設定方法の結果ではないかと考えています。コントローラーで次のアプローチを使用しています。
App.EditBookController = Ember.ObjectController.extend({
enterEditing: function() {
this.transaction = App.router.get('store').transaction();
this.transaction.add(this.get('content'));
},
updateRecord: function() {
this.transaction.commit();
this.transaction = null;
App.router.transitionTo('books');
}
});