我正在为我的生产环境编译我的资产管道,它适用于我的所有环境。如何为我的开发环境重新编译资产管道?
我检查了配置/开发环境,但找不到修复程序。
提前感谢您的帮助......
答案 0 :(得分:83)
要删除预编译资产,请使用:
rake assets:clean
这基本上是删除public/assets
目录。如果您需要在特定环境中运行它,则可能需要包含RAILS_ENV
变量。
答案 1 :(得分:38)
尝试使用
rake assets:clobber
在rails 4中为我工作
答案 2 :(得分:5)
当您在本地(在开发计算机上)运行编译任务时,资产将在Rails生产环境中编译,但会写入公用文件夹。
这意味着即使您在开发模式下运行,它也将使用已编译的资产而不是向管道发送请求。这是正常行为 - 如果public/assets
中文件不存在,请求只会转到管道。
编译任务通常只应在部署时使用,并且应在远程(生产)机器上使用。
如果您已在本地编译,则可以删除public/assets
文件夹中的所有文件,并且开发将像以前一样运行。如果您将这些文件检入源代码管理,则需要将其删除。
一旦删除,事情应该可以正常工作。 小号 最后一个提示:如果这是升级的应用程序,请检查您的配置设置与Rails资产管道指南的last section中的配置设置。
答案 3 :(得分:4)
对于Rails 5:
$ RAILS_ENV=development bin/rake assets:clobber