Bootstrap のみを使用する場合は、Gem ファイルに「less-rails」および「less-rails-bootstrap」gem を含めることで実行できます。
次に、.css.less ファイルで @import ブートストラップを実行できます。
@import "twitter/bootstrap"
または、各構成ファイルを個別に含めることもできます (不要なものを除く)。
// Reset
@import "twitter/bootstrap/reset";
// Core variables and mixins
@import "twitter/bootstrap/variables";
@import "twitter/bootstrap/mixins";
// Grid system and page structure
@import "twitter/bootstrap/scaffolding";
// Styled patterns and elements
@import "twitter/bootstrap/type";
@import "twitter/bootstrap/forms";
@import "twitter/bootstrap/tables";
@import "twitter/bootstrap/patterns";
何らかの理由で less-rails-bootstrap gem を使用したくない場合、または含めたいブートストラップ以外の .less ファイルがある場合は、手動で .less パスを less-rails 構成に追加する必要があります。
ファイル名が .css.less で終わる場合、アセットパイプラインがそのコンパイルを処理する必要があるため (「less-rails」が含まれている限り)、この追加作業は必要ないことに注意してください。この手順は、アプリの .css.less ファイルで外部の .less ファイルを直接参照する場合にのみ必要です。
私がブートストラップに使用するセットアップは、*.less ファイルを にコピーすることvendor/assets/frameworks/twitter/bootstrap
です。おそらくRuby on Railsの魔法がインポートを未処理の.lessファイルに解決し、それらをどうするかわからなかったために、ファイルを保持するvendor/assets/stylesheets/...
といくつかの問題が発生しました(これは私の推測に過ぎず、完全には調べていません) )。
プロジェクトで .less ファイルを取得したら、それらの場所を less-rails に伝える必要があります。これを行うには、次をapplication.rb
.
YourApp::Application.configure do
config.less.paths << File.join(Rails.root,'vendor','frameworks')
# Should be set to true in production.
config.less.compress = false
end
以下を使用して、それらを .css.less ファイルにインポートできます。
@import "twitter/bootstrap/reset"
@import "twitter/bootstrap/variables"
...