2014-12-13 3 views
2

Я пишу приложение Ruby on Rails и использую базу данных Neo4J. Я использую камень neo4j-core, чтобы интегрировать два, и у меня есть проблема при подключении к базе данных.Ruby on Rails - Neo4J Connection Refused

База данных не находится на том же сервере, что и приложение, поэтому мне необходимо изменить какую-либо конфигурацию. В application.rb файла, я добавил следующий код:

module Workspace 
    class Application < Rails::Application 
    # Neo4j configuration 
    config.neo4j.session_type = :server_db 
    config.neo4j.session_path = 'http://***.***.**.***:7474' 
    end 
end 

Я попытался запустить приложение после этого, и он работал. Тем не менее, я затем добавил следующее в контроллере, чтобы проверить соединение далее:

module Api 
    class CountriesController < ApplicationController 
     def index 
      Neo4j::Session.open(:server_db) 

      # Get Coutnry Information 
      @countryList = Neo4j::Session.query. ... 
     end 
    end 
end 

И если я пытаюсь запустить приложение сейчас, это дает мне ошибку следующее соединение (на линии, где я открытие Neo4j сессии):

connection refused: localhost:7474 

Почему пытается подключиться к локальному хосту, даже если в конфигурации Neo4j я указал реальный IP базы данных?

Я сейчас смущен этим прямо сейчас. Любая помощь будет оценена по достоинству.

Спасибо!

ответ

3

Конфигурация доступна в драгоценном камне neo4jrb/neo4j, а не в neo4jrb/neo4j-core. Попробуйте это вместо:

Neo4j::Session.open :server_db, "http://your_ip:7474" 
+0

Спасибо! Он работает сейчас. – Rizkallah