Ember数据 - 如何更新记录

时间:2012-01-16 20:02:44

标签: ember.js ember-data

我确实用ember-data与sinatra json-app交谈实现了一些代码。方法findAll按预期工作并加载记录。 我也在DS.Store.create中实现了updateRecord-method,但实际上并不知道如何更新和提交。请看这里的代码(为了简洁起见,我没有包含jquery函数):http://pastie.org/3197008

我尝试了以下内容:

a = Todos.records.objectAt(0).set("text", "should be so")
a.store.commit()

但是我收到以下错误:TypeError: Object (subclass of DS.State) has no method 'enter'

我应该如何更新记录?或者我是否忘记为更新实施某些内容?

提前致谢!

2 个答案:

答案 0 :(得分:4)

我遇到了同样的问题。我认为这是ember-data中的一个错误。问题是代码没有正确初始化某些子状态,而那些子状态不是状态实例,而是状态类。

我通过定义一个函数来解决问题,该函数每次调用时都会生成一个新的状态实例(使用正确创建的子状态)。您可以找到我的更改here

我还要求ember-data人员解决我的问题,所以希望这个问题很快就会消失。您可以查看pull request进行讨论。

答案 1 :(得分:2)

我今天早上遇到了同样的问题。使用emberjs git版本