我有一個目錄projName/vendor/assets/bootstrap/css/
我公司在生產模式。 production.rb包含:config.assets.precompile << /(^[^_\/]|\/[^_])[^\/]*$/
當我運行耙資產:預編譯 我得到 projName/public/assets/css/
但我想projName/public/assets/bootstrap/css/
我不明白爲什麼引導目錄是不存在的。 實際上,供應商/資產和應用/資產下的所有頂級目錄均缺失public assets/
軌資產流水線生產預編譯
回答
該正則表達式的含義是什麼?如果你想預編譯所有東西,試試這個。
config.assets.precompile = ['*.js', '*.css']
這包括咖啡,sass,sccs,slim,haml等嗎? – ahnbizcad 2014-09-04 14:31:39
編譯的資產被寫入config.assets.prefix
中指定的位置。默認情況下,這是public/assets
目錄。
要理解這一點,你必須先了解什麼是預編譯並執行。讓我來解釋
當您運行(rake任務)
rake assets:precompile
它會在您的應用程序文件夾內public
文件夾,將編譯你的所有資產清單(即你的application.css
和application.js
)
這究竟發生了什麼? - > Rails捆綁了一個rake任務,它將編譯所有這些。這個rake任務就是上面所顯示的。
編譯資產被寫入到config.assets.prefix
指定的位置。默認情況下,這是public/assets
目錄。
編譯文件的默認匹配包括的application.js,application.css和所有非JS/CSS文件(這將自動包括所有的圖像資產)從應用程序/文件夾的資產包括你的寶石。
而那正是該正則表達式的手段(包括在您的應用程序/ assets文件夾的所有內容),也可以明確地提供它,如在回答以上。
希望這有助於。
這裏有一些鏈接,供您參考
http://guides.rubyonrails.org/asset_pipeline.html#precompiling-assets
http://dennisreimann.de/blog/precompiling-rails-assets-for-development/
其實,如果你想預編譯的一切,試試這個:
def precompile?(path)
%w(app lib vendor).each do |asset_root|
assets_path = Rails.root.join(asset_root, 'assets').to_path
return true if path.starts_with?(assets_path)
end
false
end
# Precompile all assets under app/assets (unless they start with _)
Rails.application.config.assets.precompile << proc do |name, path|
starts_with_underscore = name.split('/').last.starts_with?('_')
unless starts_with_underscore
path = Rails.application.assets.resolve(name).to_path unless path # Rails 4 passes path; Rails 3 doesn't
precompile?(path)
end
end
(基於code in the Rails Guide。 )
- 1. 預編譯軌AngularJS資產
- 2. Rails:生產資產:預編譯錯誤
- 3. Rails的生產預編譯資產
- 4. 軌道資產流水線澄清
- 5. 導軌資產沒有在生產中預編譯
- 6. 預編譯的資產在生產軌道4,5的應用
- 7. 資產預編譯
- 8. Heroku軌道預編譯資產
- 9. 資產:預編譯錯誤軌道
- 10. 預編譯問題導軌資產
- 11. 滑軌資產管道:不預編譯
- 12. Heroku的軌道上資產預編譯
- 13. 導軌資產預編譯CSS訂單
- 14. 資產預編譯錯誤
- 15. Rails 3.2資產:預編譯
- 16. 耙資產:預編譯
- 17. CSS預編譯的資產
- 18. 無法預編譯資產
- 19. Rails 3.1資產預編譯
- 20. 資產預編譯不編譯其他mime_types資產
- 21. Capistrano編譯資產錯誤 - 資產:預編譯:nondigest?
- 22. 預編譯資產和非編譯資產
- 23. 導軌資產沒有預編譯,css在生產中看起來不同
- 24. 軌資產奇怪生產
- 25. Rails資產已預編譯,但生產環境正在尋找它們/資產
- 26. 編譯生產資產失敗
- 27. 什麼是耙子資產:預編譯沒有RAILS_ENV =生產?
- 28. rake資產:預編譯嘗試連接到生產數據庫?
- 29. 耙資產:預編譯工作不生產
- 30. Rails 3.2.10未在生產中預編譯的資產
究竟我們你希望與那個正則表達式匹配嗎? – PinnyM 2013-05-13 21:13:30
你是否試圖讓你的css中包含twitter引導程序。如果是這樣,只需在您的視圖使用的scss文件頂部添加「@import」bootstrap「;」。 – halmeetdave 2013-05-13 21:17:45