繁体   English   中英

db.collection 不是使用 mongodb 的函数

[英]db.collection is not a function on using mongodb

我一直在尝试使用 mongodb 并插入一些数据,但出现错误。 这是代码。

const MongoClient = require('mongodb').MongoClient;

MongoClient.connect('mongodb://localhost:27017/TodoApp', (err, db) => {
  if (err) {
    return console.log('Unable to connect to MongoDB server');
  }
  console.log('Connected to MongoDB server');


  db.collection('Users').insertOne({
    name: 'Andrew',
    age: 25,
    location: 'Philadelphia'
  }, (err, result) => {
    if (err) {
      return console.log('Unable to insert user', err);
    }

    console.log(result.ops);
  });

  db.close();
});

MongoDB 的本机驱动程序已更改其.connect()方法在最新版本中为您提供的内容。

3.0

connectCallback(错误,客户端)

2.2

connectCallback(错误,数据库)

这些是您的(err, db) => {... }回调在文档中的定义方式。


.connect .connect()方法为您提供了一个MongoClient实例。 在连接地址中包含数据库名称至少不会改变这一点。

您将不得不改用客户端的.db()方法来获取带有集合的Db实例。

const dbName = 'TodoApp';

MongoClient.connect('mongodb://localhost:27017/', (err, client) => {
  if (err) { ... }

  let db = client.db(dbName);

  db.collection('Users')...;
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM