10

我希望能夠在我的RoR項目中使用Bootstrap 3Sass,並讓腳手架生成器輸出Bootstrap 3HTML。我正在使用Ruby 2與Rails 4.如何讓Ruby on Rails輸出Bootstrap v3腳手架?

沒什麼太花哨 - 大多數情況下只有表單按鈕纔有相應的CSS類。

我用Rails Tutorial Sample App (ver 4)爲基礎,其中包括對bootstrap-sass寶石 - 但是當我用發電機的HTML沒有正確的自舉類 - 例如按鈕沒有btn btn-default類。

我意識到腳手架的行爲與其設計的一樣,它是一個基礎,並且意味着要被定製(或替換) - 但是似乎應該不難生成的HTML也是「Bootstrap就緒」

enter image description here

一個相關的問題不得不如果有人提到,在目錄lib/erb/scaffoldedit.html.erb編輯文件的答案 - 會覆蓋Rails會使用腳手架默認模板。我並不反對,但我希望可能會有這樣的gem

我喜歡使用bootstrap-sass寶石,我希望有這將是與之兼容的解決方案 - 我寧願使用scss不是less

好像應該有幾個寶石來做到這一點。

+0

所以問題是什麼,到底是什麼?你的模板沒有應用到他們的類,你想要的? – cimmanon

+0

是的 - 我想生成的模板具有它們包含的元素(按鈕,表格,表單等)的默認引導類 – cwd

+0

如果您使用的是simple_form,您可以自定義它以添加默認元素。像config.button_class ='btn btn-primary'。此外,沒有官方發佈的簡單表格支持BS3 –

回答

21

我有同樣的麻煩,但最終發現這一點: https://github.com/decioferreira/bootstrap-generators

它包括引導3.1和提供腳手架,你可以選擇HAML和SCSS以及其他選項。

例如,當我做rails g scaffold Link guid:string profile:string media_url:string

它會自動生成此:

automatically scaffolded with Bootstrap 3

編輯的Heroku USERS

我也有麻煩推我的應用程序正在使用引導發電機( v3.1.1)到Heroku。 Heroku發出了錯誤File to import not found or unreadable: bootstrap.scss

修復程序竟然是修改自動生成的bootstrap-generators.scss文件。將@import "bootstrap.scss";更改爲@import "bootstrap";(例如,只刪除擴展名)。

新編輯爲HEROKU用戶 新寶石3.1.1.1修復了這個錯誤。您不再需要在bootstrap-geneerators.scss文件中將@import "bootstrap.scss";更改爲@import "bootstrap";

+0

非常好。最近我還發現了[bootstrap-sass-extras](https://github.com/doabit/bootstrap-sass-extras),但我認爲你的看起來更好。 – cwd

+0

我也試過這個,但是這個似乎是一個更一般的解決方案 – jpwynn

+0

看起來正是我所要求的。謝謝! – cwd

5

如果您需要自定義生成的視圖越多,你實際上可以覆蓋與自己的默認視圖。

只要把它們放在lib/templates/{erb|haml}/scaffold。你可以看到一些示例文件here

+0

謝謝你的信息和鏈接! – cwd