Ember Data 1.0.0:this.modelFor('author')。save failed - 如何在控制器中保存新创建的记录?

时间:2013-09-01 18:01:51

标签: ember.js ember-data

我正在从EMber数据0.13迁移到1.0.0 beta。根据文档(https://github.com/emberjs/data/blob/master/TRANSITION.md),以下内容应该有效:

App.AuthorsNewRoute = Ember.Route.extend({

  model: function () {
    return this.store.createRecord('author');
  },

  actions: {
    save: function() {
      this.modelFor('author').save();
    }
  }
})

但是,在我的情况下,我总是得到一个“无法调用方法'保存'未定义”错误“。

使用“this.get(' currentModel ')。save();”时,它在路径中使用保存操作时有效。将保存操作放在控制器中时,它不再起作用。同样的错误:无法调用未定义“错误”的方法“保存”。

如何在控制器中访问新创建的记录并保存?

有人可以提供一个简单的例子吗?

THX 马克

1 个答案:

答案 0 :(得分:5)

你有权在路线中使用它:

this.get('currentModel').save();

在控制器中你应该使用:

this.get('model').save();