2013-02-26 81 views
1

我有一个Meteor应用程序,我想知道是否有配置应用程序的方法来为用户使用一个Mongo数据库,并为应用程序数据的其余部分使用不同的数据库。这里的目标是最终有多个应用程序共享相同的用户帐户数据库,但每个应用程序都有自己独特的应用程序数据库。 Meteor有可能吗?流星应用程序中Meteor.users的独立数据库

+0

如果您使用MongoHQ或您自己的基础设施等提供商,请设置相同的端口 – Prashant 2013-02-26 17:13:19

+0

对不起,我不明白这是如何工作的。你的意思是要配置流星使用某些端口来进行某些集合吗? – 2013-02-26 18:47:40

+0

对不起,我误解了你的问题。我告诉你的基本上是为所有应用程序访问相同的Mongo实例,但这不会满足您拥有独特应用程序数据库的目的。尽管如此,你应该尝试下面的答案。 – Prashant 2013-02-26 19:23:24

回答

0

虽然我很欣赏这个问题的最佳答案,但目前无法在流星中完成(截至0.5.9)。当然,可以修改源代码来实现这样的事情,但我使用Meteor来避免自己编写所有的锅炉管道代码。希望这个选项将来会被添加。

0

您可以在流星服务器上使用mongodb driver。您可以使用Meteor.call访问客户端上的数据。虽然我从来没有尝试过它应该工作。这也是一个很好的机会检查meteor's newnpm system

服务器JS

var require = __meteor_bootstrap.require; 
var mongo = require('mongodb'); 
var Server = mongo.Server, Db = mongo.Db, BSON = mongo.BSONPure; 
var client = new Db('test', new Server("127.0.0.1", 27017, {}), {w: 1}) 
... 

你不会有反应但除非你写你自己的方法来检查数据库。

+0

没问题,所以基本上,我必须设置它,然后使用这个设置来处理所有特定于应用程序的非用户集合,对吧?然后仍然允许流星处理所有的用户数据。那是你在做什么? – 2013-02-27 14:02:23

0

你试过Meteor.connect()吗?它可让您连接到外部Meteor应用程序的数据库。

http://docs.meteor.com/#meteor_connect

编辑:我从来没有尝试过的用户(即收藏是从“普通”的收藏我猜有些不同),但我想它应该工作。