我安装插件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

捆扎机似乎并没有挑上创业板的要求,所以你缺少rack-openid宝石。

的解决方案是以下添加到Gemfile到位ruby-openid的。 (rack-openid取决于ruby-openid但宝石是意识到这一点,将其安装为需要)

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

不要忘了更新后运行bundle install你的Gemfile。

其他提示

我理解,因为红宝石的OpenID您的问题可能是非常不稳定的,对于小的原因。我把它安装在工作,但在家里无法得到它的权利!我会给我的工作配方:

我的插件(ONLY)结果 http://github.com/binarylogic/authlogic_openid 结果:从authlogic_openid http://github.com/senthilnambi/open-id <峰br:从开ID >

宝石:结果 authlogic(2.1.3)结果 authlogic - 旧(1.0.4)结果 OpenID的(0.0.1)结果 机架(1.0.1)结果 机架-的OpenID(1.0.1)结果 红宝石的OpenID(2.1.7),点击

目前的环境(ONLY):结果 config.gem “authlogic”

GL!

gem "rack-openid", :require => "rack/openid"
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top