web-dev-qa-db-fra.com

Fichier à importer introuvable ou illisible: bootstrap (Bootstrap, Rails, erreur Sass)

C'est mon application.css.scss

/*
 *= require_self
 *= require_tree .
 *= require social-share-button
 */

J'utilise cette gemme - https://github.com/twbs/bootstrap-sass

Selon les instructions, voici mon groupe :assets dans mon Gemfile:

group :assets do
  gem 'sass-Rails', '~> 4.0.3'
  gem 'uglifier', '>= 1.3.0'
  gem 'coffee-Rails', '~> 4.0.0'
  gem "font-awesome-Rails"
  gem 'bootstrap-sass', '~> 3.2.0'
  gem 'autoprefixer-Rails'
end

J'ai créé un fichier appelé bootstrap_and_overrides.css.scss, qui a ceci:

@import "bootstrap-sprockets";
@import "bootstrap";
@import "bootstrap-responsive";
@import "font-awesome";

C'est l'erreur:

Sass::SyntaxError at /
File to import not found or unreadable: bootstrap-sprockets.
/app/assets/stylesheets/bootstrap_and_overrides.css.scss:1)

C'est mon application.js:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require bootstrap
//= require bootstrap-sprockets
//= require social-share-button
//= require_tree .

J'ai redémarré mon serveur plusieurs fois et consulté mon application depuis une fenêtre de navigation privée.

J'utilise Rails 4.1.1 et Ruby 2.1.1.

Aucune suggestion?

Mise à jour 1:

Voici ce à quoi ressemble mon app/assets/stylesheets/:

$ ls
application.css.scss            bootstrap.css               font-awesome.min.css
bootstrap-social.css            bootstrap.min.css           locations.css.scss
bootstrap-theme.css         bootstrap_and_overrides.css.scss    main.css
bootstrap-theme.min.css         font-awesome.css            posts.css.scss
16
marcamillion

J'ai compris le problème ici.

Le problème est que j'utilise un groupe :assets. Cela a été supprimé dans Rails 4.

http://edgeguides.rubyonrails.org/upgrading_Ruby_on_Rails.html#upgrading-from-Rails-3-2-to-Rails-4-0-gemfile

**4.2 Gemfile**
Rails 4.0 removed the assets group from Gemfile. You'd need to remove that line from your Gemfile when upgrading. 

Une fois que je les ai sortis du groupe d'actifs, j'ai supprimé mon Gemfile.lock et exécuté le bundle install... tout fonctionnait parfaitement.

J'espère que cela aide une autre âme pauvre.

35
marcamillion

Je viens de vivre le même problème

File to import not found or unreadable: bootstrap-sprockets

J'ai essayé de redémarrer le serveur de développement et d'exécuter "Rails s" à nouveau et cela a bien fonctionné!

7
Mats Gausdal

J'ai eu un problème similaire mais ce qui a été résolu pour moi était:

  • Serveur Kill Rails 
  • Ajouter l'instruction gem 'bootstrap-sass', '3.3.6' dans mon Gemfile 
  • Exécutez la commande bundle install sur le terminal du serveur
  • Redémarrer le serveur Rails

Cependant, juste pour noter que j'utilise la dernière version de Rails - Rails 5.0.1, contrairement à la version 4.2, je n'avais pas à m'inquiéter de la suppression de l'instruction asset do dans Gemfile

0
user1548875