簡體   English   中英

Node.js-在Heroku上使用MongoHQ連接到MongoDB

[英]Node.js - Connecting to MongoDB using MongoHQ on Heroku

我有一個使用Express的Node.js應用,該應用將數據存儲在mongoDB中(本地)。

現在,它已成功在雪松堆棧上推送到heroku,並且服務器正在運行。 我通過終端添加了mongohq插件。

現在...如何通過mongohq將那個mongoDB連接到我的應用程序以開始使用它??? 我在任何地方都找不到在線教程。 如果您能指出我的觀點或使我開始在哪里添加配置,我將不勝感激!

非常感謝。

更新:

我嘗試了以下操作(使用MYPASSWORD和MYDBNUMBER的真實值:

在routes.js中

var db = mongoose.connect('mongodb://heroku:<MYPASSWORD>@staff.mongohq.com:10049/<MYDBNUMBER>');

在我的schema.js中(也嘗試使用heroku

var mongoose = require('mongoose');
mongoose.connect('mongodb://heroku:<MYPASSWORD>@staff.mongohq.com:10049/<MYDBNUMBER>');

我的package.json

{
"name": "NAME"
, "version": "0.0.1"
, "dependencies": {
  "express": "2.4.6"
, "connect": "1.7.1"
, "stylus": ">= 0.0.1"
, "mongodb": ">= 0.9.6-7"
, "mongoose": ">= 2.0.0"
, "ejs": ">=0.4.3"
}
}

現在,只有根“ /” GET成功。 實際上,如果我嘗試使用/ page / ANYTHING,我可以成功獲取一個渲染的500錯誤頁面,該頁面可以用來處理嘗試獲取尚未創建的“頁面”的過程……這對我來說似乎很奇怪。 其他一切都給我一個內部服務器錯誤。

另外,如果我去mongohq並在那里打開數據庫,則已經創建了我的模型頁面的集合,並且創建了唯一性索引,即使我無法訪問頁面來創建或查看模型也是如此。我的應用...

很樂意提供其他任何信息。

我們正在將heroku用於MongoHQ,但在本例中,我們自己創建了MongoHQ帳戶,因此我們的解決方案有所不同。 現在,我們使用Redis插件,在這種情況下,我們使用heroku env變量連接到Redis。 創建新插件時,Heroku添加了一堆env變量,您可以從node.js應用輕松訪問此操作:

process.env.NAME_OF_VAR

如果要使用Redis,則var的名稱為REDISTOGO_URL,因此我們的代碼如下所示

process.env.REDISTOGO_URL

對於MongoHQ,env變量似乎是MONGOHQ_URL

您可能需要進行一些解析。 Heroku在http://devcenter.heroku.com/articles/mongohq#using_the_mongo_ruby_driver上提供了一些有關Ruby的文檔,這些文檔可以幫助您順利進行。

關於在快速應用程序中在何處執行此操作。 我們正在app.js上完成所有設置,這是我們在應用程序中的入口。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM