4
試圖讓部署軌3.1應用程序的竅門......Rails 3.1 - 如何判斷資產是否在生產中預編譯?
基於我讀過,我已經把下面的代碼在我deploy.rb:
before "deploy:symlink", "assets:precompile"
namespace :assets do
desc "Compile assets"
task :precompile, :roles => :app do
run "cd #{release_path} && rake RAILS_ENV=#{rails_env} assets:precompile"
end
end
但要告訴你事實,我不能注意到有或沒有差異。有什麼我在這裏失蹤?
編輯*找到了答案:
預編譯生產您通常會執行以下rake任務(在生產服務器上)的資產。
$ bundle exec rake assets:precompile 這會將所有資產寫入public/assets目錄,同時在文件名中包含MD5指紋以增加緩存優勢。
注意:在生產過程中,來自使用image_tag,asset_path,javascript_include_tag等視圖的資產的所有引用都會自動將此指紋包含在文件名中,以便提供正確的版本。