2016-01-12 4 views
1

Я пытаюсь использовать searchkick вместе с моей базой данных Neo4j и Sinatra. Я получаю эту неопределенную локальную переменную или метод ошибки:Searchkick не найден - неопределенная локальная переменная или метод

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' 

Я перезагрузил свой Синатра сервер, проверил, что Elasticsearch запущен. Есть что-то, что мне не хватает?

+0

Вы использовали его перед использованием 'searchkick'? –

ответ

0

Neo4j не поддерживается бэкэнд для поиска по версии 1.3.6. searchkick работает с ActiveRecord, Mongoid и NoBrainer. Примеры в документации показывают ActiveRecord:

class Product < ActiveRecord::Base 
    searchkick 
end 

Если вы используете поддерживаемую базу данных, то вы убедитесь, что ваш класс модель наследует от соответствующего класса разоблачать методы searchkick в нем.