Skip to main content
Ask A Question
Notifications
You’re not receiving notifications from this thread.
Subscribe

Issue with bootstrap sprockets in application.js

Rails • Asked by Damian Nelwep

Hello,

As said in the title, I get an error message when I try to access my localhost:3000.

The message is :

Sprockets::FileNotFound in Welcome#index

Showing /home/dameaw/work/five/meawinit/app/views/layouts/application.html.erb where line #8 raised:

couldn't find file 'bootstrap-sprockets' with type 'application/javascript'
Checked in these paths: 
  /home/dameaw/work/five/meawinit/app/assets/config
  /home/dameaw/work/five/meawinit/app/assets/images
  /home/dameaw/work/five/meawinit/app/assets/javascripts
  /home/dameaw/work/five/meawinit/app/assets/stylesheets
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/coffee-rails-4.2.2/lib/assets/javascripts
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/jquery-rails-4.3.5/vendor/assets/javascripts
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/toastr-rails-1.0.3/vendor/assets/javascripts
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/toastr-rails-1.0.3/vendor/assets/stylesheets
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/bootstrap-sass-2.3.2.2/vendor/assets/images
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/bootstrap-sass-2.3.2.2/vendor/assets/javascripts
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/bootstrap-sass-2.3.2.2/vendor/assets/stylesheets
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/actioncable-5.1.7/lib/assets/compiled
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/actionview-5.1.7/lib/assets/compiled
  /home/dameaw/.rbenv/versions/2.6.1/lib/ruby/gems/2.6.0/gems/turbolinks-source-5.2.0/lib/assets/javascripts

I try to get rid of '//= require bootstrap-sprockets' in the application.js file but when I do that, the style is completly broken.

Thank you for your advices in advances and have a sweet day :)


Looks like you have a version issue here.

The 3.2.0.4 gem version of bootstrap-sass specifies an import with

//= require bootstrap-sprockets

https://www.rubydoc.info/gems/bootstrap-sass/3.2.0.4

Whereas your version seems to be the 2.3.2.2. It specifies an import like this :

We have a helper that includes all available javascripts:

// Loads all Bootstrap javascripts
//= require bootstrap

You can also load individual modules, provided you sort out any related dependencies.

//= require bootstrap-scrollspy
//= require bootstrap-modal
//= require bootstrap-dropdown

https://www.rubydoc.info/gems/bootstrap-sass/2.3.2.2

You should fix your gem version in your gemfile to 2.3.2.2 and use the correct way to call the lib.


Thank you very much for the tip.

At first I tried to put "gem 'bootstrap-sass', '~> 2.3.2.2'" in the Gemfile and it turned out I got no error message but big display problems, mainly in the menu.

So I finally changed the Gemfile version to "gem 'bootstrap-sass', '~> 3.4', '>= 3.4.1'" and put back '//= require bootstrap-sprockets' in application.js and now it works perfectly :)

This is because I struggle installing some gems like social_stream. And now I'm trying to install mailboxer. Would you know a good gem for messaging/social purpose ?

Anyways thank you for your advice which has been a very good help for me :) Have a nice day mate


Yeah, even better if you're using a more recent version of bootstrap.

In terms of messaging/social purpose I would suggest to develop those features by yourself. There are not too complicated and it is better to control your features than to force yourself to use a library that will probably end up causing you more troubles than solutions.

It is based on my personal experience.


Login or Create An Account to join the conversation.

Subscribe to the newsletter

Join 31,353+ developers who get early access to new screencasts, articles, guides, updates, and more.

    By clicking this button, you agree to the GoRails Terms of Service and Privacy Policy.

    More of a social being? We're also on Twitter and YouTube.