【发布时间】:2017-07-16 12:09:15
【问题描述】:
Rails 4.2.1、Ruby 2.2.6、sprockets 3.7.1、sprockets-rails 3.2.0
我正在尝试使用新的 .js 文件部署到我的登台服务器,但预编译什么也没做。这是带有“--trace”的输出。
** Invoke assets:precompile (first_time)
** Invoke assets:environment (first_time)
** Execute assets:environment
** Invoke environment (first_time)
** Execute environment
** Execute assets:precompile
** Invoke ckeditor:nondigest (first_time)
** Invoke environment
** Execute ckeditor:nondigest
我已经尝试运行 rake assets:clean、assets:clobber 和 assets:precompile,无论是否在这些命令前附加“RAILS_ENV=staging bundle exec” - 什么都没有。我删除了资产文件夹并再次运行预编译 - 没有。我增加了 assets.version - 什么都没有。
我尝试将资产预编译指令放在 /config/initializers/assets.rb、/config/environments/staging.rb 和 /config/application.rb 中
Rails.application.config.assets.version = '1.0.2'
Rails.application.config.assets.precompile += %w(
admin.css
admin.js
new_file.js
)
有没有办法知道 assets:precompile 正在查看哪个文件?
* 更新 *
设置 assets.compile = true 并部署使资产预编译。我的印象是,该指令将使 Rails 动态地为资产服务,而不是使用预编译的资产。这样做是否正确?
Rails.application.config.assets.compile = true
【问题讨论】:
标签: ruby-on-rails ruby assets sprockets precompile