【发布时间】:2016-03-03 14:22:20
【问题描述】:
我在尝试执行批量操作时遇到 mongodb/meteorangular 问题,我得到的 db 未定义。
我的模型如下:
Tests = new Mongo.Collection('tests');
我的电话:
var bulk = db.collection('tests').initializeOrderedBulkOp();
............
............
bulk.execute();
这个功能甚至可以与流星一起使用吗?看起来我也没有错别字。
不胜感激
【问题讨论】:
-
可用,但只能在“服务器”端使用,不能在“客户端”(浏览器)中使用。这需要一点时间,但如果您打算使用它,则可以这样做。
-
是的,现在正在尝试。我在执行正确的公式时遇到了“仅在服务器上”错误,如果我成功了,我会在完成后更新帖子。
-
好吧,“仅在服务器上”就是它所说的。您不能在“minimongo”(这是浏览器端库)中使用它。相反,如果您希望直接从“服务器”执行调用,那么这完全是另一回事,而且相对简单。只要您从驱动程序中获取底层的
collection或database对象,而不是使用Meteor.collection接口。 -
好吧,我实际上是从我的应用程序外部资源的回调中播种我的数据库。我在客户端做它是因为它更容易,但我计划将所有东西都移到服务器上。我还没有使用过流星服务器,但如果一切都在那里,那会更好/更糟,因为我的回调也可以删除我的数据库中的东西,但我认为这将是一种发布/订阅的交易。
-
在这里等第二个,“我的应用程序之外的资源”?那么您是否使用流星进行播种?如果您只想要一个单独的播种应用程序,那么为什么要使用流星呢?只需创建一个直接使用驱动程序的单独数据播种应用程序。如果这实际上是您的意图,那么用“流星”标记确实会使问题感到困惑。您需要对如何做做出具体决定,然后酌情实施。 Minimongo 不应该真的支持这个(恕我直言),因为“批量”操作(通常)不应该来自远程(浏览器)客户端。
标签: mongodb meteor angular-meteor