我很难使用 ember 数据设置 belongsTo 关系。我有一个jsfiddle 示例来演示。我最初的问题是我收到以下错误:
Uncaught Error: <DS.StateManager:ember5035> could not respond to event loadedData in state rootState.loaded.updated.inFlight.
这只发生在我使用 select 更新模型上的 belongsTo 关系时。那是使用 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');
}
});