No deprecated_block_helpers in Rails 3.0.5
When I'm trying to launch my production server on Rails 3.0.5, I keep getting this error:
/var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_sup开发者_如何学JAVAport/core_ext/module/introspection.rb:70:in `const_get': no such file to load -- action_view/helpers/deprecated_block_helpers (LoadError)
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:70:in `local_constants'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:70:in `each'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:70:in `local_constants'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:68:in `each'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:68:in `local_constants'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/core_ext/module/introspection.rb:86:in `local_constant_names'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:100:in `new_constants'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:91:in `each'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:91:in `new_constants'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:599:in `new_constants_in'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:225:in `load_dependency'
from /var/lib/gems/1.8/gems/activesupport-3.0.5/lib/active_support/dependencies.rb:239:in `require'
from /home/punkweek/punkweek/config.ru:3
from /var/lib/gems/1.8/gems/rack-1.2.2/lib/rack/builder.rb:46:in `instance_eval'
from /var/lib/gems/1.8/gems/rack-1.2.2/lib/rack/builder.rb:46:in `initialize'
from /home/punkweek/punkweek/config.ru:1:in `new'
from /home/punkweek/punkweek/config.ru:1
It seems there's a problem with a file, deprecated_block_helpers, which is not found in Rails. Anyone knows how to solve this problem?
Actually this is a bug in Rails 3.0.5 (it has been fixed in edge).
DeprecatedBlockHelpers is autoloaded in ActionView::Helpers, but the file itself was removed in 9de8305
This helper was designed to show a deprecation notice for using <% %>
instead of <%= %>
(or -
instead of =
in haml) for certain blocks. I'm not sure exactly which blocks the deprecation is for, but maybe take a look through your templates and see if you can trial-and-error this into working.
Alternatively, you can vendor Rails and remove the DeprecatedBlockHelpers autoload, or track edge Rails.
精彩评论