【发布时间】:2017-08-08 00:31:14
【问题描述】:
我需要将我的一部分资产导出到一些外部网站。为此,我创建了一个 rake 任务:
rake build:navbar
问题是我无法让资产库缩小我的库。这是我的任务方法中的代码:
desc "Build navbar assets and markup for other sites."
task navbar: :environment do
# Set environment to production so pipeline will minify assets.
Rails.env = "production"
# Some setup code removed...
# How do we coax assets into minifying files?
Rails.application.config.assets.prefix = "../build/navbar/staging"
Rails.application.config.assets.js_compressor = :uglifier
Rails.application.config.assets.css_compressor = :sass
Rails.application.config.assets.digest = false
Rails.application.config.assets.compress = true
Rails.application.config.assets.debug = false
Rails.application.config.assets.paths = [Rails.root.join('/app/assets/javascripts'),
Rails.root.join('/app/assets/stylesheets/navbar')]
Rails.application.config.assets.precompile = ['navbar.js', 'navbar.css']
# Compile now.
Rake::Task['assets:clean'].invoke
Rake::Task['assets:precompile'].invoke
# Cleanup code removed...
end
它将生成我的资产的压缩版本 (navbar.css.gz),但不会生成缩小版本 (navbar.min.css)。
我已经在谷歌上上下搜索了这个,似乎这个设置方法应该可以解决问题。我错过了什么?
【问题讨论】:
标签: ruby-on-rails-4 rake asset-pipeline