你如何以编程方式设置MONGO_URL?

时间:2014-05-16 06:17:04

标签: mongodb meteor

如何在Meteor应用程序中设置MONGO_URL?

我试过

process.env.MONGO_URL = '...'

在我的服务器端代码中,在Meteor.startup之外,但是没有用。

我正在使用demeteorizer将其捆绑到node.js应用程序中。我无法直接在终端设置MONGO_URL(我在第三方提供商处运行我的应用程序)。

2 个答案:

答案 0 :(得分:2)

来自Meteorpedia: Environment Variables.

  

设置环境变量的值

     

最安全的时间,保证任何变量的行为   是在METEOR STARTS之前。 这通常是通过你的   PaaS提供商的应用程序控制面板,或者在shell脚本中   启动Meteor,例如

     

重要:您也可以在Meteor中设置/更改环境变量,但需要在使用之前进行设置。例如现在为时已晚   加载Meteor后设置MONGO_URL ,但MAIL_URL正常   你会在发送任何邮件之前设置它。

答案 1 :(得分:2)

您可以覆盖默认的收集驱动程序

MongoInternals.defaultRemoteCollectionDriver = _.once(function () {
  return new MongoInternals.RemoteCollectionDriver(Meteor.settings.MONGO_URL, {
    oplogUrl: Meteor.settings.MONGO_OPLOG_URL
  });
});

或按集合手动设置

var database = new MongoInternals.RemoteCollectionDriver(Meteor.settings.MONGO_URL, {
  oplogUrl: Meteor.settings.MONGO_OPLOG_URL
});

somecollection = new Mongo.Collection('somecollection', {_driver: database});
相关问题