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