неопределенный метод `announce 'для класса` Class' (NameError) в ошибке rails в геме осьминога - PullRequest
2 голосов
/ 19 октября 2011

Я получаю следующую ошибку после того, как включил в свое приложение gem sharding базы данных 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

Ответы [ 2 ]

7 голосов
/ 06 января 2012

Согласно этому запросу , поддержка Rails 3.1 была добавлена ​​в основную ветку гема, но обновленная версия не была выпущена .Вы можете использовать основную ветвь хранилища в качестве источника драгоценного камня, ссылаясь на хранилище github в своем Gemfile:

gem 'ar-octopus', :git => "git://github.com/tchandy/octopus.git", :require => "octopus"
0 голосов
/ 11 марта 2014

Я пытаюсь использовать ar-octupos из репозитория ветки master, но все еще получаю ошибку при установке пакета.

Bundler could not find compatible versions for gem "activesupport":

В снимке (Gemfile.lock): activesupport (3.1.12) В Gemfile: ar-octopus (> = 0) ruby ​​зависит от activesupport (> = 3.2.0) ruby ​​Запуск bundle update восстановит ваш снимок с нуля, используя только драгоценные камни в вашем Gemfile, что может разрешить конфликт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...