Domanda

I installare il plugin open_id_authentication e hanno questo errore:

/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)

quando provo ad iniziare rails server In realtà, rack OpenID installato nel mio sistema e posso caricarlo da IRB:

irb(main):001:0> require 'rack/openid'
=> true

Ho provato ad aggiungere hack per Gemfile come ho fatto con rubino OpenID, ma did't aiuto:

gem "ruby-openid", :require => "openid"
gem "rack-openid", :require => "rack/openid"

Ho anche provato

gem "ruby-openid", :require => "rack/openid"

ma

/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)

In rotaie 2.3.5 app non c'è questo problema e non riesco a capire perchè accade in Rails 3.

È stato utile?

Soluzione

Il problema è questo codice nella parte superiore della init.rb del plugin

if Rails.version < '3'
  config.gem 'rack-openid', :lib => 'rack/openid', :version => '>=0.2.1'
end

Bundler non sembra prendere sul requisito gemma in modo da non trovi la gemma rack-openid.

La soluzione è quella di aggiungere la seguente al vostro Gemfile al posto di ruby-openid. (rack-openid dipende ruby-openid ma gemme è consapevole di questo e lo installerà in base alle esigenze)

gem 'rack-openid', '>=0.2.1', :require => 'rack/openid'

Non dimenticare di eseguire bundle install dopo l'aggiornamento del Gemfile.

Altri suggerimenti

I capire il vostro problema in quanto rubino OpenID può essere molto irregolare, per piccole ragioni .. ho installato sul posto di lavoro, ma non riesco a farlo a casa! Darò la mia ricetta di lavoro:

Ho la Plugin (SOLO)
authlogic_openid da: http://github.com/binarylogic/authlogic_openid
open-id da: http://github.com/senthilnambi/open-id

gemme:
Authlogic (2.1.3)
Authlogic-OID (1.0.4)
OpenID (0.0.1)
cremagliera (1.0.1)
rack OpenID (1.0.1)
ruby-OpenID (2.1.7)

Al ambiente (SOLO) :
config.gem "Authlogic"

GL!

gem "rack-openid", :require => "rack/openid"
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top