2

我正在编写一个 Ruby on Rails 应用程序并使用 Neo4J 数据库。我正在使用 neo4j-core gem 来集成两者,但在连接数据库时出现问题。

数据库与应用程序不在同一台服务器上,因此我需要更改一些配置。在 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,它仍试图连接到 localhost?

我现在对此感到非常困惑。任何帮助,将不胜感激。

谢谢!

4

1 回答 1

3

该配置在neo4jrb/neo4j gem 中可用,而不在neo4jrb/neo4j-core中。试试这个:

Neo4j::Session.open :server_db, "http://your_ip:7474"
于 2014-12-13T14:27:48.077 回答