Ich versuche, Bootstrap 3.0 auf meiner Rails-App zu installieren. Ich habe kürzlich das Tutorial von Michael Hartl beendet und versuche nun, mein eigenes System mit dieser neuen Version von Bootstrap zu erstellen, aber ich habe einige Fragen, bei denen ich mir nicht sicher bin.
Meine Systemspezifikationen:
- OS X Mountain Lion auf MBP
- Schienen 4.0
- Ruby 2.0
Fragen, die ich habe:
- Was ist der beste Edelstein für meine Gemfile? Ich habe einige von ihnen gefunden.
- Was importiere ich auf meinem
custom.css.scss
? Ich habe irgendwo gelesen, dass es anders ist als 2.3.2. - Muss ich noch etwas tun, damit Bootstrap funktioniert, oder sind die verbleibenden Schritte mit denen identisch, die ich für Bootstrap 2.3.2 ausgeführt habe?
Bearbeiten
Das Bootstrap-Rails-Projekt auf GitHub sagt zunächst Folgendes:
gem 'anjlab-bootstrap-rails', :require => 'bootstrap-rails',
:github => 'anjlab/bootstrap-rails'
Dann heißt es zu tun:
gem 'anjlab-bootstrap-rails', '>= 3.0.0.0', :require => 'bootstrap-rails'
Tun sie dasselbe oder müssen Sie beide tun?
quelle
vendor/assets/{stylesheets|javascripts}
? Kettenräder sollten die darin enthaltenen Dateien minimierenapp/assets/{stylesheets|javascripts}
.Wie viele wissen, ist kein Edelstein erforderlich.
Schritte zu unternehmen:
Kopieren
zu:
app/assets/stylesheets
Kopieren
zu:
app/assets/javascripts
Anhängen:
app/assets/stylesheets/application.css
Anhängen:
app/assets/javascripts/application.js
Das ist alles. Sie können jetzt eine neue coole Bootstrap-Vorlage hinzufügen.
Warum
app/
stattvendor/
?Es ist wichtig, die Dateien zu App / Assets hinzuzufügen , damit Sie in Zukunft Bootstrap-Stile überschreiben können.
Wenn Sie später eine
custom.css.scss
Datei mit benutzerdefinierten Stilen hinzufügen möchten . Sie haben etwas Ähnliches inapplication.css
:Wenn Sie die Bootstrap-Dateien in App / Assets abgelegt haben , funktioniert alles wie erwartet. Wenn Sie sie jedoch in Vendor / Assets platzieren , werden die Bootstrap-Dateien zuletzt geladen. So was:
Einige Ihrer Anpassungen werden daher nicht verwendet, da die Bootstrap-Stile sie überschreiben.
Grund dafür
Rails sucht an vielen Orten nach Assets. Um eine Liste dieser Standorte zu erhalten, können Sie Folgendes tun:
In der Ausgabe sehen Sie, dass App / Assets Vorrang haben und daher zuerst geladen werden.
quelle
Diese Antwort ist für diejenigen unter Ihnen gedacht, die Bootstrap 3 in Ihrer Rails-App installieren möchten, ohne ein Juwel zu verwenden. Es gibt zwei einfache Möglichkeiten, die weniger als 10 Minuten dauern. Wählen Sie diejenige aus, die Ihren Anforderungen am besten entspricht. Glyphicons und Javascript funktionieren und ich habe sie auch mit der neuesten Beta von Rails 4.1.0 getestet.
Verwenden von Bootstrap 3 mit Rails 4 - Die Bootstrap 3-Dateien werden in das Herstellerverzeichnis Ihrer Anwendung kopiert.
Hinzufügen von Bootstrap von einem CDN zu Ihrer Rails-Anwendung - Die Bootstrap 3-Dateien werden vom Bootstrap-CDN bereitgestellt .
Nummer 2 oben ist die flexibelste. Sie müssen lediglich die Versionsnummer ändern, die in einem Layout-Helfer gespeichert ist. Sie können also die Bootstrap-Version Ihrer Wahl ausführen, unabhängig davon, ob es sich um 3.0.0, 3.0.3 oder sogar ältere Bootstrap 2-Versionen handelt.
quelle
localhost:3000/fonts/glyphicons-halflings-regular.svg
als Beispiel in der Chrome-Konsole gesucht , und die Glyphicons werden nicht angezeigt (als 404)./vendor/assets/
in Ihr Projekt kopiert haben . Sie sollten auch Ihre application.css überprüfen, um sicherzustellen, dass Sie bootstrap.min benötigen und die @ font-face-Überschreibungen haben. SCSS ist heutzutage weit verbreitet. Wenn Sie das verwenden, müssen Sie 'src: url' in 'src: asset-url' in den @ font-face-Überschreibungen ändern. Es gibt auch ein Beispielprojekt am Ende des Beitrags, das helfen kann.Twitter hat jetzt eine Sass-fähige Version von Bootstrap mit Edelstein, so dass es einfacher als je zuvor ist, sie zu Rails hinzuzufügen.
Fügen Sie Ihrem Gemfile einfach Folgendes hinzu:
bundle install
und starten Sie Ihren Server neu, um die Dateien über die Pipeline verfügbar zu machen.Es gibt auch Unterstützung für Kompass und nur Sass: https://github.com/twbs/bootstrap-sass
quelle
Ich benutze https://github.com/yabawock/bootstrap-sass-rails
Das ist ziemlich einfach zu installieren, schnelle Edelstein-Updates und Follow-ups und schnelle Korrekturen, falls dies erforderlich ist.
quelle
gem bootstrap-sass
bootstrap-sass lässt sich mit der Asset-Pipeline leicht in Rails ablegen.
In Ihrer Gemfile müssen Sie das Bootstrap-Sass-Gem hinzufügen und sicherstellen, dass das Sass-Rails-Gem vorhanden ist. Es wird standardmäßig neuen Rails-Anwendungen hinzugefügt.
gem 'sass-rails', '>= 3.2' # sass-rails needs to be higher than 3.2
gem 'bootstrap-sass', '~> 3.0.3.0'
bundle install
und starten Sie Ihren Server neu, um die Dateien über die Pipeline verfügbar zu machen.Quelle: http://rubydoc.info/gems/bootstrap-sass/3.0.3.0/frames
quelle
Für mich ist der einfachste Weg, dies zu tun
1) Laden Sie den Bootstrap herunter und entpacken Sie ihn in
vendor
2) Fügen Sie den Bootstrap-Pfad zu Ihrer Konfiguration hinzu
config.assets.paths << Rails.root.join("vendor/bootstrap-3.3.6-dist")
3) Benötigen Sie sie
in css
*= require css/bootstrap
in js
//= require js/bootstrap
Getan!
Bei dieser Methode werden die Schriftarten ohne andere spezielle Konfiguration geladen und die Bootstrap-Dateien müssen nicht aus ihrem eigenständigen Verzeichnis verschoben werden.
quelle
Die Verwendung dieses Zweigs wird hoffentlich das Problem lösen:
quelle
Ich denke, das aktuellste Juwel für die neue Bootstrap-Version ist Form Anjlab .
Aber ich weiß nicht, ob es derzeit gut mit anderen Edelsteinen wie simple_form funktioniert, wenn Sie dies tun
rails generate simple_form:install --bootstrap
usw. Möglicherweise müssen Sie einige Initialisierer oder Konfigurationen bearbeiten, um sie an die neue Bootstrap-Version anzupassen .quelle
gem "anjlab-bootstrap-rails", "~> 3.0.0.1"
.gem 'anjlab-bootstrap-rails', '>= 3.0.0.0', :require => 'bootstrap-rails'
Ich hatte tatsächlich eine einfache Problemumgehung, bei der ich mir fast den Kopf kratzte, wie es funktioniert. hahah!
Nun, zuerst habe ich Bootstrap heruntergeladen (die kompilierte CSS- und JS-Version).
Dann habe ich alle Bootstrap-CSS-Dateien in die eingefügt
app/assets/stylesheets/
.Und dann habe ich alle Bootstrap-JS-Dateien in die eingefügt
app/assets/javascripts/
.Ich habe die Seite und die Wallah neu geladen! Ich habe gerade Bootstrap in meinem RoR hinzugefügt!
quelle