Ошибка при настройке мышления сфинкса и летающего сфинкса
У меня есть приложение Rails 3, работающее на Heroku. Я использую поисковую систему Thinking Sphinx
в своем приложении. Для того, чтобы он работал с Heroku, я добавил драгоценный камень flying-sphinx
в свой gemfile, как это было предложено в документах Heroku.
Это то, что у меня есть в моем gemfile
gem 'thinking-sphinx', '2.0.11'
gem 'flying-sphinx', '0.7.0'
В соответствии с описанными здесь шагами https://devcenter.heroku.com/articles/flying_sphinx,
После добавления дополнения fly-sphinx (дополнения Heroku: добавьте flying_sphinx: деревянный),
когда я бегу
heroku запустить fly-sphinx configure
Я получаю следующую ошибку:
/app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/sphinx_configuration.rb:2:in 'initialize': uninitialized constant FlyingSphinx::SphinxConfiguration::ThinkingSphinx (NameError)
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:31:in 'new'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:31:in 'configure'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:20:in 'block in run'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:20:in 'each'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:20:in 'all?'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/lib/flying_sphinx/cli.rb:20:in 'run'
from /app/vendor/bundle/ruby/1.9.1/gems/flying-sphinx-0.8.0/bin/flying-sphinx:5:in ''
from vendor/bundle/ruby/1.9.1/bin/flying-sphinx:19:in 'load'
from vendor/bundle/ruby/1.9.1/bin/flying-sphinx:19:in ''
И я не могу продолжить дальше.
Ответы
Ответ 1
Просто, чтобы ответить на исходный вопрос - переходим к stacktrace, если вы используете fly-sphinx 0.8.0, что, безусловно, было ошибкой, а значит, и более свежими версиями. Надеюсь, вы последовали за предложением Берта и дали 0.8.5 вращение (0.7.1 является последним для Rails 2.3).
Ответ 2
Моя рабочая настройка Gemfile для рельсов 3:
gem 'thinking-sphinx', "~> 2.0.10", require: 'thinking_sphinx'
gem 'flying-sphinx', '0.8.4'
или
# sphinx
gem 'thinking-sphinx', '3.0.3'
gem 'flying-sphinx', '1.0.0'