澄清Mockgoose/Mongoose的用法?
问题描述:
我目前一定会使用Mockgoose/Mongoose进行小型NodeJS演示,并对其目的和功能有一些疑问。澄清Mockgoose/Mongoose的用法?
我知道Mockgoose是为了避免真正的数据库而部署到内存中的非持久性数据库,但它是否仍然提供有关存储和检索模型/文档的基本数据库功能?还是仅仅用于访问Schema和模型而没有基本的数据库功能?
例如,此代码对Mockgoose中的模型保存到数据库有什么影响?
var Tank = mongoose.model('Tank', yourSchema);
var small = new Tank({ size: 'small' });
small.save(function (err) {
if (err) return handleError(err);
// saved!
})
然后,我将能够检索它?
Tank.find({ size: 'small' })
或者正如我先前所说是Mockgoose的唯一目的来访问的架构和模式没有任何基本的数据库中存储的功能?
答
Mockgoose在存储引擎设置为内存的背景下调出实际的mongod。如果你调用了任何保存函数,只要你没有开始新的测试运行,数据将被保存,并且你将能够运行“find”来恢复它。