如何在ember.js中处理对象ID?

时间:2013-05-03 22:35:56

标签: mysql api rest symfony ember.js

我只是尝试用Emberjs构建一个小应用程序作为我的前端框架。

所有应用程序都是,我可以使用文本框和按钮添加名称的列表,然后通过单击每个名称后面的删除按钮从列表中删除名称。

我通过REST API使用一个非常简单的Symfony2应用程序作为我的数据存储,并且当前可以将名称添加到列表中没有问题。我不明白的是如何删除它们。

如果我在列表中添加一个新名称,它将不具有由数据库引擎分配的唯一ID(我的对象具有id和名称),所以当我来删除它时,我可以不要将ID传递给DELETE API调用。

我该如何解决这个问题?在调用create API调用并更新对象时,我是否需要以某种方式返回完整对象(带有ID)(我将如何使用Ember?)还是有其他方法可以做到这一点?

编辑:添加了更好地说明我的问题的图片:

enter image description here

2 个答案:

答案 0 :(得分:4)

正如评论中已经提到的,当你创建一个新记录时,Store设置了记录的内部id,那么当你提交你的后端时,你的API应该方便地返回整个对象(用它的新id)ember will然后注意将新的服务器端生成的id设置回Store中内部新创建的记录。

答案 1 :(得分:1)

您的服务器应该将ID序列化回您的ember应用程序。如果您使用的是Ember数据且模型是DS.Model的扩展名,则不必在模型上定义id属性,但仍可以使用它。