我听说过记忆的好处,但我不确定它是如何工作的。对于实施例,在:Ruby Memoization如何工作?
class User < ActiveRecord::Base
def twitter_followers
# assuming twitter_user.followers makes a network call
@twitter_followers ||= twitter_user.followers
end
end
按照我所知,@twitter_followers
是一个实例变量,并且将仅保留在范围为一个请求
I(所以,这将是由视图访问。)我不确定相同的用户是否刷新同一页面,是否会使用缓存的结果而不是查询。
术语是“memoization”,顺便说一句。 –