【问题标题】:Using the native mongo driver in Meteor在 Meteor 中使用本机 mongo 驱动程序
【发布时间】:2016-09-07 07:11:40
【问题描述】:

必须有一些使用 Meteor 1.3 打开 mongo 数据库的示例 本机驱动程序。使用 MongoDB Node.JS 驱动程序访问集合 例如另一个本地数据库。新的流星 1.3 指南声称一切皆有可能。

【问题讨论】:

  • mongodb 提供了这个例子 // Retrieve var MongoClient = require('mongodb').MongoClient; // 连接到数据库 MongoClient.connect("mongodb://localhost:27017/exampleDb", function(err, db) { if(!err) { console.log("We are connected"); } });
  • 然而在流星中使用 import { mongodb } from 'mongodb';和 var MongoClient = mongodb.MongoClient;失败

标签: mongodb meteor npm


【解决方案1】:
            import { mongodb } from 'mongodb';
            var MongoClient = require('mongodb').MongoClient;



              MongoClient.connect("mongodb://localhost:27017/test",function(err,db) { 

           var collection = db.collection('test');
           var doc1 = {'hello':'doc1'};
          var doc2 = {'hello':'doc2'};
           var lotsOfDocs = [{'hello':'doc3'}, {'hello':'doc4'}];

           collection.insert(doc1);                     

【讨论】:

    【解决方案2】:

    这是一个稍微更新的答案:

    import { MongoClient } from 'mongodb';
    
    // Meteor offsets Mongo port by 1, so in case your application is running on 3000
    const connection = await MongoClient.connect('mongodb://localhost:3001/', {
        useNewUrlParser: true,
        useUnifiedTopology: true,
        poolSize: 1,
      });
      const db = await connection.db('testdb');
      // then you may create your collection of choice
      db.collection('testcollection');
    

    仅供参考,您也可以像这样直接访问 Mongo 驱动程序

    import { MongoInternals } from 'meteor/mongo';
    
    MongoInternals.defaultRemoteCollectionDriver()
        .mongo.db
    

    【讨论】:

      猜你喜欢
      • 2021-04-20
      • 2020-04-02
      • 1970-01-01
      • 1970-01-01
      • 2013-12-21
      • 1970-01-01
      • 2021-05-29
      • 2014-03-30
      • 1970-01-01
      相关资源
      最近更新 更多