我正在尝试在我的 Rails 应用程序中实现缓存。我的控制器中的视图会根据传入的参数生成一个非常大的项目列表。这个大列表不会经常更改,所以我想根据路由缓存它。
例子:
配置/路由.rb:
get "policies/available/:country" => 'policy#available', :format => :json
策略控制器.rb:
class PolicyController < ApplicationController
def available
country = params[:country]
@policies = VideoPolicy.available_in_country country
respond_to do |format|
format.html
format.json{
render :json => @policies.to_json
}
end
end
end
调用“polices/available/US”会缓存该路由的 JSON 结果,然后调用“polices/available/CA”会缓存第二个路由的 JSON 结果。(也就是每条路由缓存一个结果,但用于同一个视图/控制器。)
我将如何做到这一点?某种形式的页面/动作/片段缓存?