web-dev-qa-db-ja.com

エラーNoMethodError:ActionView :: Base:Classの未定義のメソッド `debug_rjs = '

このプロジェクトはRails 3.0.9。

今、私は宝石とGemfileを更新しました=>

source 'http://rubygems.org'

gem 'Rails', '3.1.1'

# Bundle Edge Rails instead:
# gem 'Rails', :git => 'git://github.com/Rails/rails.git'

gem 'pg'
gem 'devise'
gem "will_paginate"
gem 'Ruby-debug19'
gem 'rack', '1.3.3'
gem 'jquery-Rails'

後Rails s、私が行うとき http://0.0.0.0:3000/ このエラーが発生==

=> Booting WEBrick
=> Rails 3.1.1 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-10-10 17:50:23] INFO  WEBrick 1.3.1
[2011-10-10 17:50:23] INFO  Ruby 1.9.2 (2011-02-18) [i686-linux]
[2011-10-10 17:50:23] INFO  WEBrick::HTTPServer#start: pid=3103 port=3000
[2011-10-10 17:50:31] ERROR NoMethodError: undefined method `debug_rjs=' for ActionView::Base:Class
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/railtie.rb:34:in `block (3 levels) in <class:Railtie>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/railtie.rb:33:in `each'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/railtie.rb:33:in `block (2 levels) in <class:Railtie>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:43:in `block in run_load_hooks'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `each'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `run_load_hooks'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/base.rb:216:in `<class:Base>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/base.rb:133:in `<module:ActionView>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_view/base.rb:8:in `<top (required)>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/abstract_controller/view_paths.rb:90:in `view_paths='
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/abstract_controller/view_paths.rb:76:in `prepend_view_path'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.1.1/lib/Rails/engine.rb:532:in `block (2 levels) in <class:Engine>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:43:in `block in run_load_hooks'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `each'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/activesupport-3.1.1/lib/active_support/lazy_load_hooks.rb:42:in `run_load_hooks'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_controller/base.rb:234:in `<class:Base>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_controller/base.rb:171:in `<module:ActionController>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_controller/base.rb:3:in `<top (required)>'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_dispatch/middleware/static.rb:31:in `ext'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_dispatch/middleware/static.rb:15:in `match?'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/actionpack-3.1.1/lib/action_dispatch/middleware/static.rb:47:in `call'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.1.1/lib/Rails/engine.rb:456:in `call'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.1.1/lib/Rails/rack/content_length.rb:16:in `call'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.1.1/lib/Rails/rack/log_tailer.rb:14:in `call'
    /home/user1/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.3.3/lib/rack/handler/webrick.rb:59:in `service'
    /home/user1/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/1.9.1/webrick/httpserver.rb:111:in `service'
    /home/user1/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/1.9.1/webrick/httpserver.rb:70:in `run'
    /home/user1/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/1.9.1/webrick/server.rb:183:in `block in start_thread'

何をすべきか ?

35
shibly

RJSはRails 3.1から抽象化されており、JQueryが新しいデフォルトです。

http://weblog.rubyonrails.org/2011/4/21/jquery-new-default

RJSを使用する場合は、以下を含める必要があります。

gem 'prototype-Rails'

あなたのGemfile

21
Rob Di Marco

既存のアプリケーションでRJSの代わりにjQueryを使用する場合は、config/environments/development.rbから次の行を削除またはコメント化します

# config.action_view.debug_rjs = true
124
Gautam

それらをapp/assets/javascripts/application.jsに追加することができます。

//= require prototype
//= require prototype_ujs
//= require effects
//= require dragdrop
//= require controls

https://github.com/Rails/prototype-Rails/blob/master/README#L15-19

1
Koteg