gpt4 book ai didi

ruby-on-rails - Rails 缓存问题?

转载 作者:行者123 更新时间:2023-12-04 06:33:49 24 4
gpt4 key购买 nike

我有一个运行良好的 Rails 博客应用程序。但是,我做了一些缓存实验,尽管已经恢复到以前的版本,但这里仍然有问题。

似乎所有页面都在缓存或类似的东西中(我已经清理了浏览器缓存),因为服务器日志没有显示任何对数据库的访问。

关于如何解决这个问题的任何线索?谢谢!

最佳答案

问题可能是您使用的页面缓存是这样的:

class ProductsController
caches_page :index
def index
@products = Product.all
end
end

这实际上会在您的/public 目录中创建一个名为 products.html 的文件,因此甚至不会访问 Rails 堆栈,而是呈现此文件。清除浏览器缓存并不能解决问题,因为文件存储在服务器上。有两种方法可以使此缓存过期。

第一个是创建一个 Action 来清除缓存,然后在您想要清除缓存时调用该 Action :

class ProductsController
def clear
expire_page :action => :index
end
end

第二种方法是简单地从命令行 (bash) 中删除 .html 文件:

rm public/products.html

由于这个原因,页面缓存令人困惑。很难判断页面实际缓存的时间和存储位置。

P.S:如果您没有使用页面缓存,那么您可以使用以下命令清除整个 memcached cahce 或内存缓存:

Rails.cache.clear

关于ruby-on-rails - Rails 缓存问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5290013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com