2015-07-17 8 views
9

Ich entwickle eine Rails App (v4.2.1), die einen Bootstrap auf dem vendor/assets/components/bootstrap installiert hat.Raupenketten können Bootstrap v3.3.5 nicht finden, während es v3.3.4 findet

Alles lief gut, bis ich den Bootstrap von v3.3.4 auf v3.3.5 aktualisiert habe.

Jetzt sehe ich eine Fehlerseite, die couldn't find file 'bootstrap' with type 'text/css' sagt.

Hier ist meine app/assets/stylesheets/application.css:

/* 
*= require_tree . 
*= require bootstrap 
*= require fontawesome 
*= require_self 
*/ 

Wenn ich die Bootstrap v3.3.4 Herabstufung dieser Fehler verschwindet. Irgendein Vorschlag?

[UPDATE]

installiert ich den Bootstrap mit bower install Befehl. Im Folgenden ist mein .bowerrc:

 
{ 
    "directory": "vendor/assets/components" 
} 

ich einen Verzeichnisbaum wie diese:

 
vendor 
    + assets 
    + components 
     + bootstrap 
     + dist 
     + fonts 
     + grunt 
     + js 
     + less 
     + .bower.json 
     + ... 

Die Version von Ritzeln ist 3.2.0. Ich benutze auch Kettenräder-Schienen 2.3.2 und Kettenräder-es6 0.6.2.

+0

Weitere Informationen: Die Version der Ritzel ist 3.2.0. Ich benutze auch Kettenräder-Schienen 2.3.2 und Kettenräder-es6 0.6.2. – Tsutomu

+0

Verwenden Sie das Juwel "bootstrap-sass" (https://github.com/twbs/bootstrap-sass)? –

+0

@ JeremyRodi Nein. Ich möchte JavaScript-Pakete mit Bower verwalten. Der Punkt meiner Frage ist, dass sich zwischen v3.3.4 und v3.3.5 etwas über Bootstrap geändert hat. – Tsutomu

Antwort

1

Ich habe die Ursache für meine Frage gefunden.

Das Bootstrap-Team hat den Hauptabschnitt von bower.json ab v3.3.5 geändert. Zuvor hatte es folgende Artikel:

"less/bootstrap.less", 
"dist/css/bootstrap.css", 
"dist/js/bootstrap.js", 
"dist/fonts/glyphicons-halflings-regular.eot", 
"dist/fonts/glyphicons-halflings-regular.svg", 
"dist/fonts/glyphicons-halflings-regular.ttf", 
"dist/fonts/glyphicons-halflings-regular.woff", 
"dist/fonts/glyphicons-halflings-regular.woff2" 

Jetzt ist es nur noch zwei Elemente hat:

"less/bootstrap.less", 
"dist/js/bootstrap.js" 

Wir können die relevanten Diskussionen über https://github.com/twbs/bootstrap/issues/16663 folgen. Vereinfacht gesagt, haben sie diese Änderung in Übereinstimmung mit der neuen Bower-Spezifikation https://github.com/bower/bower.json-spec/pull/43 übernommen. Derzeit können Ritzel nur Dateien finden, die im Hauptabschnitt von bower.json aufgeführt sind. Das ist mein Problem.

Also, für dieses Problem zu umgehen änderte ich meine application.css wie folgt aus:

/* 
*= require_tree . 
*= require bootstrap/dist/css/bootstrap 
*= require fontawesome 
*= require_self 
*/ 

Eine grundlegende Lösung wäre eine Pull-Anforderung an den https://github.com/rails/sprockets.

+0

Mussten Sie etwas Besonderes tun, um Ihre Schriften zum Laufen zu bringen? Ich kann keine Schienen bekommen, um sie in die Pipline aufzunehmen, und so sind die Wege alle durcheinander. Vielen Dank! – astjohn