Я устанавливаю плагин open_id_authentication и имею эту ошибку:
/usr/lib/ruby/gems/1.9.1/gems/activesupport-3.0.0.beta/lib/active_support/dependencies.rb:167:in `require': no such file to load -- rack/openid (LoadError)
когда я пытаюсь запуститься rails server
На самом деле стойка-openid установила в моей системе, и я могу загрузить ее из irb:
irb(main):001:0> require 'rack/openid'
=> true
Я пытался добавить взлом к Gemfile, как я сделал с рубином-openid, но он не помог:
gem "ruby-openid", :require => "openid"
gem "rack-openid", :require => "rack/openid"
Я также попробовал
gem "ruby-openid", :require => "rack/openid"
но:
/usr/lib/ruby/gems/1.9.1/gems/bundler-0.9.7/lib/bundler/runtime.rb:38:in `require': no such file to load -- rack/openid (LoadError)
В направляющих 2.3.5 приложения там не являются этой проблемой, и я не могу понять, почему это происходит в направляющих 3.
Проблема в том, что этот код находится в верхней части файла init.rb
if Rails.version < '3'
config.gem 'rack-openid', :lib => 'rack/openid', :version => '>=0.2.1'
end
Bundler, похоже, не учитывает требования к гемам, поэтому вам не хватает гем rack-openid
.
Решение состоит в том, чтобы добавить следующее в ваш Gemfile
вместо ruby-openid
. ( rack-openid
зависит от ruby-openid
, но gems знают об этом и установят его по мере необходимости)
gem 'rack-openid', '>=0.2.1', :require => 'rack/openid'
Не забудьте запустить bundle install
] после обновления вашего Gemfile.
Я понимаю вашу проблему, поскольку ruby openID может быть очень нестабильным по небольшим причинам ... Я установил его на работе, но не могу исправить это дома! Я дам свой рабочий рецепт:
У меня есть плагины (ТОЛЬКО)
authlogic_openid от: http://github.com/binarylogic/authlogic_openid
open-id от: http://github.com/senthilnambi/open-id
Самоцветы:
authlogic (2.1.3)
authlogic-oid (1.0.4)
openid (0.0.1)
стойка (1.0.1)
стойка-openid (1.0.1)
ruby-openid (2.1.7)
В среде (ТОЛЬКО) :
config.gem "authlogic"
GL!