#ruby-on-rails
#ruby-on-rails
Вопрос:
Я получаю следующую ошибку после того, как включил в свое приложение gem octopus для сегментирования базы данных…кто-нибудь может мне помочь в этом ?…..
/usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/core_ext/module/aliasing.rb:31:in `alias_method': undefined method `announce' for class `Class' (NameError)
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/core_ext/module/aliasing.rb:31:in `alias_method_chain'
from /usr/lib/ruby/gems/1.8/gems/ar-octopus-0.3.4/lib/octopus/migration.rb:9:in `extended'
from /usr/lib/ruby/gems/1.8/gems/ar-octopus-0.3.4/lib/octopus/migration.rb:73:in `extend'
from /usr/lib/ruby/gems/1.8/gems/ar-octopus-0.3.4/lib/octopus/migration.rb:73
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
from /usr/lib/ruby/gems/1.8/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
from /usr/lib/ruby/gems/1.8/gems/ar-octopus-0.3.4/lib/octopus.rb:66
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `each'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `each'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler/runtime.rb:55:in `require'
from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.21/lib/bundler.rb:122:in `require'
from /var/www/scandetails/config/application.rb:7
from /usr/lib/ruby/gems/1.8/gems/railties-3.1.0/lib/rails/commands.rb:38:in `require'
from /usr/lib/ruby/gems/1.8/gems/railties-3.1.0/lib/rails/commands.rb:38
from script/rails:6:in `require'
from script/rails:6
Комментарии:
1. Вам необходимо предоставить код, показывающий, как вы включили и вызвали gem.
Ответ №1:
Согласно этому запросу на извлечение, поддержка Rails 3.1 была добавлена в главную ветку gem, но обновленная версия не была выпущена. Вы можете использовать главную ветвь репозитория в качестве источника gem, сославшись на репозиторий github в вашем Gemfile:
gem 'ar-octopus', :git => "git://github.com/tchandy/octopus.git", :require => "octopus"
Ответ №2:
Я пытаюсь использовать ar-octupos из отчетов главной ветки, но я все еще получаю ошибку при установке пакета.
Bundler could not find compatible versions for gem "activesupport":
В моментальном снимке (Gemfile.блокировка):
activesupport (3.1.12)
В Gemfile:
ar-octopus (> = 0) ruby зависит от
activesupport (> = 3.2.0) ruby
Запуск bundle update
перестроит ваш снимок с нуля, используя только
драгоценные камни в вашем Gemfile, что может разрешить конфликт.
Комментарии:
1. и я пытаюсь «обновить пакет», но все равно получил — Bundle не удалось найти совместимые версии для gems «activesupport»