就在我如何缓存 jbuilder 视图和 activerecord 查询的一些建议之后。我目前这样做的方式感觉不对,因为我本质上是在缓存中存储了两件事。我可以以某种方式结合它吗?我需要缓存 SQL 记录,这样数据库就不会被击中,而且视图文件也需要最大化速度。
# Controller
@posts = Rails.cache.fetch ["posts"], :expires_in => 1.hour do
Post.all.limit(10).order("id desc").to_a
end
和
# Jbuilder view
json.cache! ["posts"], :expires_in => 1.hour do |json|
json.array! @posts do |post|
json.id post.id
json.title post.title
end
end