尝试在单元测试运行之前删除所有集合中的所有文档...
var collections = mongoose.connection.collections;
async.eachSeries(_.keys(collections), function(key, cb){
collections[key].remove(function(){
//Never gets here, doesn't drop the collection and doesn't error.
cb();
});
}
但是remove()中的回调永远不会被触发。
我已经注销了
collections[key]
,它确实解析为一个集合。没有错误,但是超时,因为它从不运行回调。
香港专业教育学院试图循环模型以及调用
remove
,但它是同样的问题。我在这里做错了什么?我可以看任何日志吗?
最佳答案
您可以尝试使用drop方法:
var async = require("async"),
_ = require("underscore"),
collections = _.keys(mongoose.connection.collections);
async.forEach(collections, function(key, done) {
var collection = mongoose.connection.collections[key]
collection.drop(function(err) {
if (err && err.message != "ns not found") {
done(err);
} else {
done(null);
}
})
}, callback);
关于node.js - NodeJS Mongoose collection.remove不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29946016/