在rails 3.1資產管道中使用Less(與Sass/Scss結合使用)最簡單的方法是什麼?如何在rails 3.1應用程序中使用Less?
我想加載像foo.css.less文件一樣,我會爲bar.css.scss
我發現了一些靠不住的解決方案,不爲我工作(沒有嘗試過很多)這樣做: https://github.com/thisduck/ruby-less-js/issues/2
這個想法是以一種乾淨的方式使用Twitter Bootstrap。 在此先感謝
在rails 3.1資產管道中使用Less(與Sass/Scss結合使用)最簡單的方法是什麼?如何在rails 3.1應用程序中使用Less?
我想加載像foo.css.less文件一樣,我會爲bar.css.scss
我發現了一些靠不住的解決方案,不爲我工作(沒有嘗試過很多)這樣做: https://github.com/thisduck/ruby-less-js/issues/2
這個想法是以一種乾淨的方式使用Twitter Bootstrap。 在此先感謝
只要把你的yourlessfile.less
文件到public/stylesheets
,那麼在您看來,並附
stylesheet_link_tag "/stylesheets/yourlessfile.less", :rel => "stylesheet/less"
別忘了在您的視圖less.js。
從this blog post這傢伙創造了Less Rails寶石。
它使得在Rails 3.1項目中輕鬆實現更少。
如果您只想使用引導程序,您可以通過在GemFile中包含'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出於任何原因,或者您要包含非bootstrap .less文件,則需要手動將less路徑添加到less-rails配置。請注意,如果您的文件名以.css.less結尾,則無需額外的工作,因爲asset-pipeline應該爲您處理該編譯(只要您包含'less-rails')。只有在您的應用程序的.css.less文件中直接引用外部.less文件時才需要執行此過程。
我用於引導的安裝程序是將* .less文件複製到vendor/assets/frameworks/twitter/bootstrap
。保留vendor/assets/stylesheets/...
中的文件引起了一些問題,可能是由於Rails魔術將我的導入解析爲未處理的無文件文件並且不知道如何處理它們(這只是我的猜測,我沒有充分考慮它) 。
一旦你的項目中有.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。減檔利用:
@import "twitter/bootstrap/reset"
@import "twitter/bootstrap/variables"
...
我用你的第二種方法,它絕對有效!謝謝@billmag –
不同的方法當然可以,這是一個乾淨而簡單的解決方案的討論,但較少的文件不走通資產管道。我希望它被鏈輪處理,並與其餘部分一起壓縮... – Sucrenoir
這是問題標題的一個很好的答案,但不是問題的詳細信息。搜索誰看到標題的人很方便。 –