【发布时间】:2021-09-08 17:49:13
【问题描述】:
我是 node.js 和 mongoose 的新手,我试图在名为“database”的数据库中访问 MongoDB Atlas 中名为“questions”的现有集合
我能够使用 MongoDB 本机驱动程序来做到这一点:
MongoClient.connect(url,{ useUnifiedTopology: true },(err,client)=>{
assert.equal(null,err);
var db = client.db('database')
const collection = db.collection('questions');
collection.findOne({},(err,docs)=>{
assert.equal(null,err);
console.log("found");
console.log(docs);
client.close();
})
})
但似乎无法使用 mongoose 完成与使用 mongodb 集合中的 findOne() 相同的任务:
mongoose.connect(url,{useNewUrlParser: true, useUnifiedTopology: true})
const db = mongoose.connection;
db.once('open',()=>{
console.log("connected")
})
const questionSchema = new mongoose.Schema({},{strict:false})
const question = mongoose.model("question",questionSchema,"questions")
const getone =async ()=>{
const post = await question.findOne({})
console.log(post)
}
getone()
当我运行它时,控制台输出是:
我如何从 mongoose 访问这个集合
谢谢
【问题讨论】: