Problema con requerir rack / openid en Rails 3 [trabajo requerir nativa correctamente]
-
22-09-2019 - |
Pregunta
instalar el plugin open_id_authentication y tienen este error:
/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)
cuando intento iniciar rails server
En realidad, en bastidor de OpenID instalado en mi sistema y puedo cargarlo desde IRB:
irb(main):001:0> require 'rack/openid'
=> true
Me trató de añadir la manipulación de Gemfile como lo hice con el rubí-openid, pero nos't ayuda:
gem "ruby-openid", :require => "openid"
gem "rack-openid", :require => "rack/openid"
También he intentado
gem "ruby-openid", :require => "rack/openid"
pero:
/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)
En los carriles 2.3.5 aplicación no es este problema y no puedo entender por qué sucede en Rails 3.
Solución
El problema es el siguiente código en la parte superior del plugin es init.rb
if Rails.version < '3'
config.gem 'rack-openid', :lib => 'rack/openid', :version => '>=0.2.1'
end
no parece Bündler de recoger en el requisito de la gema por lo que se echa en falta la gema rack-openid
.
La solución es añadir lo siguiente a su Gemfile
en lugar de ruby-openid
. (rack-openid
depende de ruby-openid
pero gemas es consciente de esto y lo instalará si es necesario)
gem 'rack-openid', '>=0.2.1', :require => 'rack/openid'
No se olvide de ejecutar bundle install
después de actualizar el Gemfile.
Otros consejos
Me entender su problema, ya que el rubí openID puede ser muy errática, por razones pequeñas .. lo tengo instalado en el trabajo, pero no puedo hacerlo bien en casa! Voy a dar mi receta de trabajo:
Tengo la Plugins (solamente)
authlogic_openid de: http://github.com/binarylogic/authlogic_openid
abierto-id de: http://github.com/senthilnambi/open-id
La gemas:
authlogic (2.1.3)
authlogic-OID (1.0.4)
openid (0.0.1)
estante (1.0.1)
rack openid (1.0.1)
rubí openid (2.1.7)
medio ambiente (SOLO) :
config.gem "authlogic"
GL!
gem "rack-openid", :require => "rack/openid"