为什么 heroku 在预编译后清理资产?
Why heroku clean assets after precomipling them?
我是新手 Rails.When 我正在将应用程序部署到 heroku,终端显示了这样的信息:
remote: -----> Detecting rake tasks
remote: -----> Preparing app for Rails asset pipeline
remote: Running: rake assets:precompile
remote: I, [2017-05-10T05:03:15.348460 #1268] INFO -- : Writing /tmp/build_6d070dbb68ed231a9980e7d6aee4630f/public/assets/fore- 1ea7b4ae84fb4d285d3da11143e3367c41cf15e8e44b9dba475b4b572fc7ae74.png
remote: I, [2017-05-10T05:03:15.370482 #1268] INFO -- : Writing /tmp/build_6d070dbb68ed231a9980e7d6aee4630f/public/assets/subdirectory/image-B-f3b8e56853071297fbe1da778049948f40f87756705420a97a157e9cf8a477be.jpg
...
remote: Asset precompilation completed (12.71s)
remote: Cleaning assets
remote: Running: rake assets:clean
我们看到app/assets/已经预编译好了,包括图片和子目录。但是当我在heroku上打开网站时,app/assets/下的所有图片都失败了。
为了解决这个问题,我 运行 RAILS_ENV=production rake assets:precompile
,签入 git,再次推送。然后图像显示正确的方式。
我的问题是:
为什么在assets预编译完成后railsclean assets(见文末)。我没有更改任何默认配置。这只发生在 heroku 中吗?
我必须 运行 在部署前在本地预编译吗?每次?
config/production.rb
config.assets.compile = true
运行 以下命令:
RAILS_ENV=production rake assets:precompile
然后将所有文件和清单文件推送到 heroku。
我是新手 Rails.When 我正在将应用程序部署到 heroku,终端显示了这样的信息:
remote: -----> Detecting rake tasks
remote: -----> Preparing app for Rails asset pipeline
remote: Running: rake assets:precompile
remote: I, [2017-05-10T05:03:15.348460 #1268] INFO -- : Writing /tmp/build_6d070dbb68ed231a9980e7d6aee4630f/public/assets/fore- 1ea7b4ae84fb4d285d3da11143e3367c41cf15e8e44b9dba475b4b572fc7ae74.png
remote: I, [2017-05-10T05:03:15.370482 #1268] INFO -- : Writing /tmp/build_6d070dbb68ed231a9980e7d6aee4630f/public/assets/subdirectory/image-B-f3b8e56853071297fbe1da778049948f40f87756705420a97a157e9cf8a477be.jpg
...
remote: Asset precompilation completed (12.71s)
remote: Cleaning assets
remote: Running: rake assets:clean
我们看到app/assets/已经预编译好了,包括图片和子目录。但是当我在heroku上打开网站时,app/assets/下的所有图片都失败了。
为了解决这个问题,我 运行 RAILS_ENV=production rake assets:precompile
,签入 git,再次推送。然后图像显示正确的方式。
我的问题是:
为什么在assets预编译完成后railsclean assets(见文末)。我没有更改任何默认配置。这只发生在 heroku 中吗?
我必须 运行 在部署前在本地预编译吗?每次?
config/production.rb
config.assets.compile = true
运行 以下命令:
RAILS_ENV=production rake assets:precompile
然后将所有文件和清单文件推送到 heroku。