簡體   English   中英

替代常規寶石紅寶石方法的動作緩存?

[英]Alternate for action caching for normal gem ruby method?

讓我們舉個例子。

def get_data(param1,param2,param3)
  #do something
  #make some api calls
end

此方法不屬於控制器。 我在我的gem的ruby類中使用了這個方法。如何基於參數的來緩存方法的結果。類似於rails中的動作緩存的方法具有到期功能。

您可以使用以下低級緩存:

def competing_price
    Rails.cache.fetch("#{param1}-#{param2}-#{param3}", expires_in: 12.hours) do
      # do something.. 
    end
end

它沒有任何關系,只需要在控制器或模型中進行。 您可以在其他任何方式(例如您的方法)中使用它。

查看參考: http : //guides.rubyonrails.org/caching_with_rails.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM