Rails资产不会更新

Stp*_*tpn 9 ruby-on-rails ruby-on-rails-3.1 asset-pipeline

我有一个Rails 3.1应用程序,由于某种原因,当我更改CSS时,更改不会显示.我做了bundle exec rake assets:precompile,它曾经帮助过一次,但现在我无论如何都被旧CSS所困扰.

Jam*_*urz 15

由于您的资产现在已预先编译,因此您需要使用以下内容清理它们

bundle exec RAILS_ENV=development rake rails_group=assets assets:clean
Run Code Online (Sandbox Code Playgroud)

  • 删除public/assets中的所有文件,然后停止运行预编译任务!如果CSS没有显示那么我打赌这是一个升级的应用程序?在这种情况下,请检查所有配置选项是否与Rails管道指南升级部分中的选项匹配. (5认同)

Ale*_*ore 5

您可能想尝试rake资产:清理然后耙资产:预编译

  • 当我这样做时,我在错误中注意到它正在执行rake资产中的rake任务:clean:所有RAILS_ENV =生产RAILS_GROUPS = assets` ..我将它切换到`development`它工作得很好!:) 谢谢. (2认同)

One*_*ood 5

对于我的生产环境,我必须结合上面的一些步骤来重新编译我的资产.

首先我必须这样做:

rake assets:clean
Run Code Online (Sandbox Code Playgroud)

确保我在合适的环境中

然后我需要删除public/assets预编译创建的目录(或者只删除需要修复的文件application-<hash>.css)

然后终于重新运行

rake assets:precompile
Run Code Online (Sandbox Code Playgroud)

并重新启动我的apache服务器(我使用带apache的乘客,未使用nginx进行测试)