【问题标题】:Meteor collection using existing database使用现有数据库收集流星
【发布时间】:2023-03-18 13:45:01
【问题描述】:

我是流星新手,找不到将现有数据库加载到流星的方法。

这里是场景。我有一个现有的带有集合“分析”的远程数据库,移动应用程序正在使用它来记录用户的数据。对于 Meteor 方面,我正在构建一个管理面板来加载分析数据以进行可视化。我成功连接到远程数据库,但是我无法在 Meteor 中显示任何数据。

这是我的代码:

Analytics = new Mongo.Collection('analytics');
console.log(Analytics.find().fetch());

即使集合不为空,它也会显示空数组。

【问题讨论】:

    标签: node.js meteor content-management-system


    【解决方案1】:

    有两种方法可以做到这一点。

    选项 1

    像这样设置MONGO_URL环境变量

    export MONGO_URL=mongodb://<remote-url>:<db-port</<db-name>
    

    例子,

    export MONGO_URL=mongodb://localhost:27017/db
    

    这样,您使用new Mongo.Collection('&lt;collection-name&gt;'); 创建的所有集合都将使用远程数据库。

    选项 2

    如果你只想使用远程数据库中的Analaytics 集合,那么

    var driver = new MongoInternals.RemoteCollectionDriver("mongodb://localhost:27017"); 
    // Or If you have oplog URL
    // var driver = new MongoInternals.RemoteCollectionDriver("mongodb://localhost:27017", { oplogUrl: <oplog-url-string-here> }); 
    
    Analytics = new Mongo.Collection('analytics', { _driver: driver });
    

    【讨论】:

      【解决方案2】:

      在启动 Meteor 之前,你需要设置 MONGO_URL

      查看this 文章。

      之后,您需要自动发布包或正确的发布/订阅。

      【讨论】:

        猜你喜欢
        • 2016-04-12
        • 1970-01-01
        • 2015-07-22
        • 1970-01-01
        • 2018-06-22
        • 1970-01-01
        • 2016-04-26
        • 2023-03-30
        • 2013-06-30
        相关资源
        最近更新 更多