Railsガイドにきちんと目を通して新しい知識を得る - Rails のキャッシュ機構編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。

今回は、Rails のキャッシュ機構の章です。

railsguides.jp

条件付きGET

リンクはこちら

stale?を使うことで条件付きGETを実現できます。

stale?を使ってキャッシュしたページを見せる場合、ステータスコード304 Not Modifiedが返ってくることを確認できました。

Started GET "/books/1"
Processing by BooksController#show as HTML
  ...
Completed 304 Not Modified in 40ms (ActiveRecord: 3.1ms | Allocations: 5132)

開発環境のcacheのON/OFF

リンクはこちら

dev:cacheを使うことで、開発環境で自由にcacheをON/OFFできます。

$ rails c
irb> Rails.cache.write('sample_key', 'sample_value')
irb> Rails.cache.read('sample_key')
#=> nil

$ rails dev:cache
#=> Development mode is now being cached.
$ rails c
irb> Rails.cache.write('sample_key', 'sample_value')
irb> Rails.cache.read('sample_key')
#=> "sample_value"