Rails4でどうしても caches_action を使いたい場合


Railsでアクションのキャッシュを行いたい場合、これまでは caches_action を使うことでアクションのキャッシュができたのですが、Rails4になって caches_action は削除されました。

ですが、何かしらの理由でどうしても caches_action を使いたい場合、救済措置が残されています。

  • Gemfileにactionpack-action_cachingを追加
# Gemfile

gem "actionpack-action_caching", github: "rails/actionpack-action_caching"
  • controllerに追記
class SampleController < ApplicationController
  # indexアクションをキャッシュ(有効期限5秒)
  caches_action :index, :expires_in => 5.seconds

  def index
     # キャッシュさせたい処理を記述
  end
end

こんな感じにすればcaches_actionを復活させることができます。

参考