使用 mongoose 访问现有的 mongodb 集合
Posted
技术标签:
【中文标题】使用 mongoose 访问现有的 mongodb 集合【英文标题】:Access an existing monogodb collection using mongoose 【发布时间】:2016-04-12 11:18:11 【问题描述】:我正在使用 Nodejs 构建一个应用程序,我需要在服务器端的集合上执行一些功能。有人告诉我使用猫鼬来访问该集合。到目前为止,这是我的代码:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
mongoose.connect('mongodb://localhost/test', function(err)
if(!err)
console.log("no error!")
);
var doc = mongoose.model('foo',
new Schema(name : String),
'answers');
doc.find(, function(err,collection)
console.log(collection)
);
我想要访问的集合称为“答案”。我想访问数据并进行一些更改并将其发布到另一个集合。上面的代码打印了一个空数组。我将不胜感激一些帮助。
【问题讨论】:
看起来你已经创建了一个模型,但还没有向数据库添加任何东西,这就是为什么你得到一个空集合 在使用猫鼬之前,我确实向 Db 添加了一些东西。我检查了它,数据在集合中。 代码看起来不错。您确定answers
集合在 test
数据库中吗?
这是一个预先存在的集合吗?它是在您为其编写模型之前创建的吗?
可能重复***.com/questions/5794834/…
【参考方案1】:
试试这个:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
mongoose.connect('mongodb://localhost/test', function(err)
if(!err)
console.log("no error!")
);
var doc = mongoose.model('answer', new Schema(
name : String)
);
doc.find(, function(err,collection)
console.log(collection)
);
【讨论】:
以上是关于使用 mongoose 访问现有的 mongodb 集合的主要内容,如果未能解决你的问题,请参考以下文章
NodeJS 和 Mongoose:将元素添加到现有的空数组
使用 mongoose 将表单数据插入 mongodb 时出现莫名其妙的行为