如果因为我的术语和对Meteor / Mongo的理解而失败,请提前道歉,我刚刚开始学习和开发它。
我正在尝试将我的本地流星应用程序连接到其他地方托管的远程mongodb。
我的代码如下所示:
Bills = new Mongo.Collection("bills");
if (Meteor.isClient) {
Meteor.subscribe("bills");
// This code only runs on the client
Template.body.helpers({
documentContent: function () {
return Bills.find();
}
});
Template.documentBody.helpers({
documentContent: function ()
{
var thingy = Bills.find();
console.log(thingy);
return Bills.find({_id: "784576346gf874"});
}
});
}
我已使用以下命令通过shell连接到数据库:
$ MONGO_URL="mongodb://mysite.net:27017/legislation" meteor
在我的浏览器中,我没有收到错误,在我定义的模板中,我看到[object Object]。控制台显示本地miniCollection,但不会从订阅的集合中返回任何文档。
我想我要问的是;如果你在本地应用程序中连接到远程MongoDB,你会怎么做?
感谢您抽出宝贵时间阅读,非常感谢任何帮助。
答案 0 :(得分:1)
Rex,如果您没有在浏览器的输出中看到错误,或者在您运行服务器的控制台中看到错误,那么您可能设置正常。这就是我正在做的事情。
在服务器目录中运行meteor list
并查找insecure
和autopublish
You should understand these two packages它们用于快速原型制作。如果它们存在,那么继续深入研究MongoDB和连接。
我建议Robomongo直接在MongoDB中查看文档。
如果他们不在,那么你需要发布数据(从服务器到客户端)并保护它(让客户只修改他们的数据)。
我推荐这两个包。
reywood:publish-composite
ongoworks:security
如果你还没有读过introduction to meteor book,那真是值得花时间。我已经开发了一段时间并且最近学会了流星。这是非常宝贵的。