Rails向け高機能カウンタキャッシュ gem ‘counter_culture’ README(翻訳)

概要 英語README: magnusvk/counter_culture(MITライセンス) 原文更新日: 2017/04/24 著者: magnusvkほか リポジトリ: https://github.com/magnusvk/counter_culture gemバージョン: 1.7.0 counter_culture README(翻訳) Railsアプリ向けの、ターボの効いたカウンタキャッシュです。Rails標準のカウンタキャッシュと比べて多くの点が改善されています。 カウンタキャッシュの更新を、値の作成や破棄のほか、値の変更時にも行える 「多階層カウンタキャッシュ」をサポート(訳注: リレーション階層が離れていてもカウンタキャッシュの更新を直接指定できる) 動的なカラム名をサポート: オブジェクトの種類ごとにカウンタキャッシュを分離 カウントの他に合計も出せる Ruby 2.2.5と2.3.1、およびRailsの最新パッチリリースである3.2、4.0、4.1、4.2、5.0、5.1でテストされています。 インストール Gemfileにcounter_cultureを追加します。 gem ‘counter_culture’, ‘~> 1.0’ 次にbundle installを実行します。 データベーススキーマ 必要なカラムをすべてのカウンタキャッシュについて作成しなければなりません。counter_cultureのジェネレータで、マイグレーション用のスケルトンを作成できます。 rails generate counter_culture Category products_count 上を実行すると、以下のようなコードを含むマイグレーションが生成されます。 add_column :categories, :products_count, :integer, null: false, default: 0 注意: gemが正常に機能するには、カラムは必ずNOT NULLに設定し、ゼロ値のデフォルトを設定する必要があります。 既存のデータにカウンタキャッシュを追加する場合は、生成されたマイグレーションに手動で値を設定する必要があります。 利用法 シンプルなカウンタキャッシュ class Product < … Continue reading Rails向け高機能カウンタキャッシュ gem ‘counter_culture’ README(翻訳)