IT技術にまつわる実験ノート

「長編を書くより、短編を数多く完成させてください。それが上達への近道です」 by 手塚治虫

Rails5 で fragment cache を使ってみる

はじめに

ここでは以下の記事を参考にして Rails5 で fragment cache を使ってみることにする。

 

説明

フラグメントキャッシュを使うことで、テンプレートエンジンを HTML に変換したものをキャッシュできる。この機能は production 環境でデフォルトで有効化される。

 

使ってみる

ざっくりとアプリを作成する。

  • rails new cache_sample
  • cd cache_sample

 

scaffold する。

  • bin/rails g scaffold Article title:string content:text
  • bin/rails db:migrate

 

ヘッダーを部分テンプレートで作成して cache してみる。

  • touch app/views/layouts/_header.html.erb

 

Bootstrap のヘッダーをコピペする。

 

app/views/layouts/application.html.erb で Bootstrap の CSS をコピペして、ヘッダーを render する。

f:id:matt-note:20190412132039p:plain


cache を development 環境で有効化する。

 

cache を使用する。cache メソッドの引数には名前を渡す。

f:id:matt-note:20190412134001p:plain

 

これでヘッダーをキャッシュすることができる。

 

キャッシュの有効期限を設定する時は、cache メソッドに expires_in オプションを渡す。

f:id:matt-note:20190412134549p:plain