7

ヘルパーメソッドを実装するときに、ヘルパーメソッドからアクセスできる場所に計算結果をキャッシュとして保存したい場合があります。

インスタンス変数に格納すると、インスタンスが汚染されるため、そうするのは賢明ではないようです。

そのような価値を保存するのに良い場所はありますか?または、ヘルパーでこのような重い計算を行うのは悪い考えですか?

4

1 に答える 1

12

Rails キャッシュを使用して、この種の値を格納することがあります。コードはこんな感じで、

def helper_method
  Rails.cache.fetch('helper_value') do
    # calculate the value if it does not exist
    ...
  end
end
于 2012-10-23T03:47:29.927 に答える