Ruby on Rails:清除缓存页面

cra*_*aig 76 caching ruby-on-rails

我有一个在开发环境中缓存页面的RoR应用程序(ruby v1.8.7; rails v2.3.5).这不是一个问题,但缓存页面的a元素是不正确的.

我没有对development.rb文件进行任何更改,我没有故意向控制器添加任何缓存命令.

我已经尝试清除浏览器(OSX上的Firefox 3.5)cookie和页面缓存(localhost).我也重启了Mongrel.似乎没有任何帮助.

我错过了什么?

Api*_*pie 119

development.rb中的这一行确保不会发生缓存.

config.action_controller.perform_caching             = false
Run Code Online (Sandbox Code Playgroud)

您可以使用清除Rails缓存

Rails.cache.clear
Run Code Online (Sandbox Code Playgroud)

这就是说 - 我不相信这是一个缓存问题.您是否对页面进行了更改而没有反映出来?您是不是正在查看该页面的实时版本?我曾经做过一次(脸红).

更新:

您可以在控制台中调用该命令.您确定要在开发中运行该应用程序吗?

唯一的选择是您尝试呈现的页面不是正在呈现的页面.

如果你观察服务器输出,你应该能够在页面渲染时看到渲染命令:

Rendered shared_partials/_latest_featured_video (31.9ms)
Rendered shared_partials/_s_invite_friends (2.9ms)
Rendered layouts/_sidebar (2002.1ms)
Rendered layouts/_footer (2.8ms)
Rendered layouts/_busy_indicator (0.6ms)
Run Code Online (Sandbox Code Playgroud)


Kar*_*ren 107

rake tmp:cache:clear 可能就是你要找的东西.

  • 如果环境不是开发环境,那么您需要添加(例如暂存) - `RAILS_ENV=staging bundle exec rake tmp:cache:clear` 否则我想它不会工作 (2认同)

Dan*_*Dan 24

我可以通过清理资产缓存来解决此问题:

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