Rails的不兼容性2.3.5和Omniauth

问题描述:

我使用Rails 2.3.5并想使用Omniauth但是我不能让它们一起工作,因为rails 2.3.5需要Rack 1.0.1和Omniauth(版本0.1.6 )需要机架1.1Rails的不兼容性2.3.5和Omniauth

我在Heroku上部署,所以我不认为我可以入侵Rails并删除对Rack1.0.1的严重依赖。

非常感谢任何帮助。

Paul

我们有类似的问题。我们在Rails 2.3.4上,想要使用OmniAuth(0.2.6)。不幸的是,唯一可能的解决方案,到目前为止,我发现是升级到Rails的2.3.8或更高版本运行于机架1.1(由OmniAuth所需的最小),然后需要OmniAuth像这样:

# In config/environment.rb require 'omniauth' (or 'oa-<strategy_name>') before Rails::Initialize 
require 'omniauth' 
Rails::Initializer.run do |config| 
    ... 

# Add your own initializer for OmniAuth 
# /config/initializers/omniauth.rb 
ActionController::Dispatcher.middleware.use OmniAuth::Builder do 
    # your strategy provider logic 
end 

这主要是从这个线程/链接修饰:http://groups.google.com/group/omniauth/browse_thread/thread/676fa835428e9c83

不幸的是我现在在这一切的中间,所以我不能承诺这个作品充分,因为我使用的是自定义策略,还没有完全作出它一直到最后。希望它为您提供了一些起点,让您深入挖掘,如果您仍然坚持这一点,如果没有别的。