Ember:logging保存到数据库但ID不会被发送到Ember实例对象

我有一个奇怪的问题。 我已经在节点中编写了一个REST API来处理来自Ember的请求。

可以使用GET检索数据并使用POST进行保存。 但是,当创build一个新的logging,我redirect到一个页面显示新保存的logging,其path中的ID显示为“空”。 如果我回到显示整个集合的页面,则新logging将重复显示; 一个在path中有正确的ID,另一个是“null”。 如果我重置页面空条目消失。

我猜是怎么回事,即使logging正确地保存到数据库并持续存在,内存中暂时还没有接收到ID的内核对象。

我有一种感觉,这与mongo的_id和Ember通常所期望的( id )有关,这是我试图修正覆盖RESTSerializer的primaryKey属性的原因。

经过几个小时的search,我发现我的问题。

在我的节点服务器…

  newFriend.save(function(err,friend){ if (err) throw err; res.writeHead(201, { 'Content-Type': 'application/json' }); res.write(JSON.stringify({"friend": newFriend.toObject()})); res.end(); }); 

服务器必须以201响应,保存的对象包含在模型名称的对象中,因为它是关键。