未找到Searchkick - 未定义的局部变量或方法

时间:2016-01-12 17:22:13

标签: ruby sinatra searchkick

我正在尝试使用searchkick以及我的Neo4j数据库和Sinatra。我得到这个未定义的局部变量或方法错误:

NameError: undefined local variable or method 'searchkick' for Movie:Class

这是我的模特:

class Movie
  include Neo4j::ActiveNode

  searchkick

  property :id
  property :movieID
  property :title
  property :year
  property :imdB
  property :rtRating
  property :poster
end

和我的Gemfile:

source 'https://rubygems.org'

gem 'searchkick'
gem 'sinatra'
gem 'neo4j'
gem 'haml'
gem 'shotgun'

我重新启动了我的Sinatra服务器,检查了Elasticsearch是否正在运行。有什么我想念的吗?

1 个答案:

答案 0 :(得分:0)

从版本1.3.6开始,Neo4j不是searchkick支持的后端。 searchkick适用于ActiveRecord,Mongoid和NoBrainer。文档中的示例显示了ActiveRecord:

class Product < ActiveRecord::Base
  searchkick
end

如果您使用的是受支持的数据库,那么您将确保模型类从相应的类继承,以在其中公开searchkick方法。