我正在使用Neo4j.rb和searchkick在rails應用程序上進行ruby操作。Searchkick搜索功能不返回任何結果
我有下面的類
class NeoUser
include Neo4j::ActiveNode
searchkick
property :first_name, type: String
property :last_name, type: String
property :email, type: String
has_many :out, :neo_users, rel_class: Following
end
在軌控制檯我做的:
NeoUser.reindex
然後:
result = NeoUser.search "*"
我得到一個空數組回:即結果。尺寸給我0
我有在本地主機上運行我的Neo4j數據庫中的數據:7000
我有我的elasticsearch服務器並在本地主機上運行:9200
NeoUser.find_by()不給我正確的結果,所以我無法找出searchkick搜索功能失敗的原因。
任何想法?
編輯:
NeoUser.reindex的輸出:
CYPHER 36ms MATCH (n:`NeoUser`) RETURN n ORDER BY n.uuid LIMIT {limit_1000} | {:limit_1000=>1000}
=> true
VERSIONS
Neo4j的(5.2.9)
Neo4j的核(5.1.6)
elasticsearch(1.0.13)
elasticsearch-API(1.0.13)
elasticsearch運輸(1.0.13)
searchkick(0.9.1)
它是否有事情請問我在我的ubuntu機器上安裝了elasticsearch版本1.7.2?
編輯2:
我看到,當我使用控制檯創建數據,搜索功能是能夠返回的數據。
所以我想searchkick無法訪問我的本地主機上運行的原始neo4j數據庫:9200。
但NeoUser.all確實會返回我所有的數據節點,那麼如何告訴searchkick使用特定的數據庫,還是存在其他一些問題?
Hrmmm,也許...我使用的是我通過Homebrew安裝的elasticsearch 1.6.0。去看看我是否可以更新... –
剛剛更新到1.7.2,沒有任何問題...你可能會嘗試使用它與ActiveRecord,看看它是否與Searchkick或與neo4j.rb的問題? –