Javascript 无法将MongoDB中新创建的项推送到AngularJS数组

Javascript 无法将MongoDB中新创建的项推送到AngularJS数组,javascript,ruby-on-rails,ruby,angularjs,mongodb,Javascript,Ruby On Rails,Ruby,Angularjs,Mongodb,我在这个问题上坚持了整整两天。 我使用RubyonRails、MongoDB和AngularJS。将新记录添加到数据库时,此记录将成功添加到集合(表)中,但无法将此记录自动显示到当前项目列表中 我是这样做的: $scope.posts.push(angular.extend(p, response.id)); $scope.posts.push(angular.extend(p, {id: response.id})); //tried also $scope.posts.push(angul

我在这个问题上坚持了整整两天。 我使用RubyonRails、MongoDB和AngularJS。将新记录添加到数据库时,此记录将成功添加到集合(表)中,但无法将此记录自动显示到当前项目列表中

我是这样做的:

$scope.posts.push(angular.extend(p, response.id));

$scope.posts.push(angular.extend(p, {id: response.id})); //tried also
$scope.posts.push(angular.extend(p, {_id: response.id.$oid})); //tried also
$scope.posts.push(angular.extend(p, {id: response.id.$oid})); //tried also
$scope.posts.push(response.id); //tried also
$scope.posts.push(response); //tried also
这项记录仍不在现有记录之列。刷新页面后,此记录是否已显示在其他记录中。(仅供参考-删除记录和
拼接
效果良好)

经过调查,可能是MongoDB集合/文档的结构造成的

我注意到,当我从MongoDB数据库加载数据时,散列如下所示:

Resource {_id: Object, body: null, created_at: "2015-10-26T19:14:13.016Z", starred: null, title: "u8u88u8u", updated_at: "2015-10-26T19:14:13.016Z", __proto__: ...}
注意第一项(下划线)\u id

Resource {id: Object, title: "bla bla bla", body: null, starred: null, created_at: "2015-10-27T15:40:04.462Z"…}
注意第一项-
id

Resource {id: Object, title: "bla bla bla", body: null, starred: null, created_at: "2015-10-27T15:40:04.462Z"…}
可能是因为我试图将包含
id
而不是
id
的项推送到数组中,所以哈希的结构不相同

我在两天内无法完成这项工作,因此我在这里键入的内容可能没有意义,但我试图在纸上记录所有可能的问题,即为什么新创建的记录不会自动推送到现有的项目数组中


提前感谢。

为什么选择使用Mongo?如果从Mongo数据库收集数据,应使用_id而不是id指向元素。它是Mongo的前缀属性。@Miha2255感谢您的评论。但是你的意思是在
响应
变量中?或者具体在哪里?