Sprockets::FileNotFound がでた

  • rails s してviewにアクセスすると Sprockets::FileNotFound になった エラー画面はこちら

gyazo.com

ActionView::Template::Error (couldn't find file 'rails-ujs' with type 'application/javascript'
Checked in these paths:
  /Users/fumihumi/project/toy_app/app/assets/config
  /Users/fumihumi/project/toy_app/app/assets/images
  /Users/fumihumi/project/toy_app/app/assets/javascripts
  /Users/fumihumi/project/toy_app/app/assets/stylesheets
  /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/jquery-rails-4.3.1/vendor/assets/javascripts
  /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/coffee-rails-4.2.2/lib/assets/javascripts
  /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actioncable-5.0.3/lib/assets/compiled
  /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/turbolinks-source-5.0.3/lib/assets/javascripts
  /Users/fumihumi/project/toy_app/node_modules):
    4:     <title>ToyApp</title>
    5:     <%= csrf_meta_tags %>
    6:
    7:     <%= stylesheet_link_tag    'application', media: 'all', 'data-turbolinks-track': 'reload' %>
    8:     <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
    9:   </head>
   10:

app/assets/javascripts/application.js:13
app/views/layouts/application.html.erb:7:in `_app_views_layouts_application_html_erb___4143786291367192025_70271393158240'
  Rendering /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb within rescues/layout
  Rendering /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_source.html.erb
  Rendered /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_source.html.erb (7.0ms)
  Rendering /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb
  Rendered /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (2.0ms)
  Rendering /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb
  Rendered /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (0.8ms)
  Rendered /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/actionpack-5.0.3/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb within rescues/layout (62.9ms)
Started GET "/users" for 127.0.0.1 at 2017-09-06 16:02:18 +0900
Processing by UsersController#index as HTML
  Rendering users/index.html.erb within layouts/application
  User Load (0.2ms)  SELECT `users`.* FROM `users`
  Rendered users/index.html.erb within layouts/application (2.1ms)
Completed 200 OK in 164ms (Views: 161.4ms | ActiveRecord: 0.2ms)

該当箇所はこちらのファイル。(assets/javascripts/application.js) app/assets/javascripts/application.jsの13行目にある(はず)の

//= require rails-ujs
この記述を削除すれば治ります!

undefined method `load_defaults' てなった

railstutorialを始めようとして"rails s " した時に死んだメモ

 undefined method `load_defaults' てなった

実行時エラーは下記。

```

fumihumi:toy_app (master)$ rails sfumihumi:toy_app (master)$ rails s
/Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/railtie/configuration.rb:95:in `method_missing': undefined method `load_defaults' for #<Rails::Application::Configuration:0x007f96482e2f80> (NoMethodError) from /Users/fumihumi/project/toy_app/config/application.rb:12:in `<class:Application>' from /Users/fumihumi/project/toy_app/config/application.rb:10:in `<module:ToyApp>' from /Users/fumihumi/project/toy_app/config/application.rb:9:in `<top (required)>' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:88:in `require' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:88:in `block in server' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:85:in `tap' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:85:in `server' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands/commands_tasks.rb:49:in `run_command!' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/railties-5.0.3/lib/rails/commands.rb:18:in `<top (required)>' from /Users/fumihumi/project/toy_app/bin/rails:9:in `require' from /Users/fumihumi/project/toy_app/bin/rails:9:in `<top (required)>' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `call' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/client/command.rb:7:in `call' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/client.rb:30:in `run' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/bin/spring:49:in `<top (required)>' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `load' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/spring-2.0.2/lib/spring/binstub.rb:31:in `<top (required)>' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' from /Users/fumihumi/.rbenv/versions/2.3.4/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:68:in `require' from /Users/fumihumi/project/toy_app/bin/spring:15:in `<top (required)>' from bin/rails:3:in `load' from bin/rails:3:in `<main>'

```

load defaultsがない。。。。

ただここまでで実行したのは

1. rails new

2. rbenv local 2.3.4

3. bundle install 

をしただけで"load defaults"なんていじっていない。。

 

では"rake"コマンドができるのかどうか確認したところ

```

rake aborted!
NoMethodError: undefined method `load_defaults' for #<Rails::Application::Configuration:0x007f7fc86dfd68>
/Users/fumihumi/project/toy_app/config/application.rb:12:in `<class:Application>'
/Users/fumihumi/project/toy_app/config/application.rb:10:in `<module:ToyApp>'
/Users/fumihumi/project/toy_app/config/application.rb:9:in `<top (required)>'
/Users/fumihumi/project/toy_app/Rakefile:4:in `require_relative'
/Users/fumihumi/project/toy_app/Rakefile:4:in `<top (required)>'
(See full trace by running task with --trace)

```

 rake aborted.......

これもできない。。。。

 > NoMethodError: undefined method `load_defaults' for #

全く同じですね。。。

 

 

結論

config/application.rbの中の

 > config.load_defaults 5.1

こいつが悪いみたい。

なのでこれをコメントアウトしてやる

> #config.load_defaults 5.1 

```

fumihumi:toy_app (master *)$ rake
Run options: --seed 63099

# Running:

```

はい治った。

 

という訳で

config.load_defaults 5.1

ですがこれはrails 5.1系からできたものみたいで、、、

rails 5.0.3系を使っていた自分はこのエラーになったようです。