如何在Neo4j.rb中使用我的全文卢塞恩索引?

时间:2016-01-12 15:50:32

标签: ruby neo4j sinatra

好的,最初我跟着this guide创建了全文索引,然后我将所有数据导入到我的Neo4j服务器上。索引效果很好,现在我尝试使用Sinatra / Ruby与我的Neo4j图形进行交互。

我正在使用Neo4j ruby​​ gem,并且我已经在标题as per this wiki entry上创建了一个带有全文索引的电影模型(movie.rb):

class Movie
    include Neo4j::NodeMixin
    property :id
    property :movieID
    property :name, :index => :fulltext
    property :year
    property :imdB
    property :rtRating
    property :poster
end

但是,我收到此错误:NameError: uninitialized constant Neo4j::NodeMixin。 Neo4j Ruby wiki条目声明:

  

neo4j-wrapper包含在neo4j gem中neo4j-wrapper gem定义了这些mixin:Neo4j :: NodeMixin

所以它应该包含在我的项目中......

我不知道如何继续...有人请帮我搜索我的全文索引?

1 个答案:

答案 0 :(得分:0)

我认为我们已经单独为您提供了帮助,但对于遇到此问题的任何人来说:

由于各种原因,Neo4j.rb项目对遗留索引没有很好的支持。那个wiki页面已经过时了(我刚刚更新了它就这么说了)。建议将searchkick gem用于Neo4j.rb的全文搜索功能。

另请注意,elasticsearch与Neo4j直接集成:

https://github.com/neo4j-contrib/neo4j-elasticsearch

这是一个视频教程:

https://www.youtube.com/watch?v=SJLSFsXgOvA

为此,我相信您需要向Neo4j发出自己的HTTP请求才能从插件中获取结果。好处是,并非所有的更改都需要通过您的Ruby应用程序(就像searchkick的情况一样)