【发布时间】:2012-09-02 12:40:38
【问题描述】:
我执行
$ heroku run rake assets:clean
Running `rake assets:clean` attached to terminal... up, run.2
/usr/local/bin/ruby /app/vendor/bundle/ruby/1.9.1/bin/rake assets:clean:all RAILS_ENV=production RAILS_GROUPS=assets
rm -rf /app/public/assets
但由于我可以通过 http 请求访问资产,而且如果我打开 heroku 控制台,我可以看到文件:
$ heroku run console
irb(main):013:0> Dir.glob "./public/assets/*"
=> ["./public/assets/img", "./public/assets/application.js.gz", "./public/assets/application.js", "./public/assets/rails.png", "./public/assets/manifest.yml", "./public/assets/application.css", "./public/assets/assets", "./public/assets/application.css.gz"]
我需要删除资产,因为它们与我的新配置产生冲突。
【问题讨论】:
-
你有没有想过解决这个问题?我有一个应用程序似乎具有在后续推送中没有更新的资产。如果我启动一个新的 Cedar 实例,服务器将使用正确的资产。
-
@MichaelPell 我没有找到任何解决方案,抱歉。
-
我的 Heroku
public/assets目录中也有资产 lodged,我非常想删除这些资产。可悲的是,assets:clean没有处理它。如果其他人除了启动一个新实例之外还有其他解决方案,我很想听听。 -
也许我误解了什么
public/assets。我现在相信asset_syncgem 将资产编译成public/assets,然后将结果同步到S3,这意味着public/assets目录应该被资产填充。我最初认为如果我们使用asset_syncgem,它们不应该在那里。 -
请注意 Heroku 正在删除
/app/public/assets,而不是/public/assets。它正在查看错误的资产目录。我还不确定如何解决这个问题。
标签: ruby-on-rails heroku asset-pipeline