Ruby Sinatra - не удалось подключиться к mongoDB на mongoHQ

Это только для моего проекта / учебы на выходных, я новичок в Sinatra и MongoDB.

Я установил драгоценные камни для mongoDB, такие как: mongo, mongo_mapper и mongoid.

Когда я пытался подключиться к своей базе данных на MongoHQ с localhost, он обнаружил такую ​​ошибку:

Mongo::ConnectionFailure at /
failed to connect to any given host:port

    * file: connection.rb
    * location: connect
    * line: 489

Я нашел похожий поток на SO , но, честно говоря, я не совсем понять ответы ...

Вот мой фрагмент кода:

require 'rubygems'
require 'sinatra'
require 'mongo'
require 'mongo_mapper'

get '/' do
  MongoMapper.connection = Mongo::Connection.new('flame.mongohq.com', 27044)
  MongoMapper.database = 'notes'
  MongoMapper.database.authenticate('foo', 'bar')
  erb :list
end

Я взял приведенный выше код из здесь , но похоже, что он не работает ...

Какая часть неправильная? Есть другой способ сделать это? В конце концов, это тестовое веб-приложение будет развернуто на heroku, поэтому я надеюсь, что решение может работать как с localhost, так и с моим сервером heroku.

Обновлено:

I just created a minimal code snippet to test the mongodb connection:
require 'rubygems'
require 'mongo'

db = Mongo::Connection.new("flame.mongohq.com", 27044).db("notes")

Но по-прежнему возникает ошибка после тайм-аута:

$ ruby mongodbtest.rb 
/Library/Ruby/Gems/1.8/gems/mongo-1.0.8/lib/../lib/mongo/connection.rb:489:in
`connect': failed to connect to any given host:port (Mongo::ConnectionFailure)
from /Library/Ruby/Gems/1.8/gems/mongo-1.0.8/lib/../lib/mongo/connection.rb:137:in
`initialize'
from mongodbtest.rb:4:in `new'
from mongodbtest.rb:4

Имя хоста и порт соответствуют документации mongoHQ, поэтому они должны быть правильными.

Заранее спасибо за помощь.

2-е обновление :

Я только что протестировал строку подключения mongodb с помощью терминала:

mongo mongodb://flame.mongohq.com:27044/notes -u foo -p bar

К сожалению это привело бы к ошибке подключения, если честно, я не знаю почему ...

5
задан Community 23 May 2017 в 11:45
поделиться