反编译发展资产管道

时间:2011-12-19 03:29:35

标签: ruby-on-rails ruby ruby-on-rails-3.1 asset-pipeline

我正在为我的生产环境编译我的资产管道,它适用于我的所有环境。如何为我的开发环境重新编译资产管道?

我检查了配置/开发环境,但找不到修复程序。

提前感谢您的帮助......

4 个答案:

答案 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