【发布时间】:2017-12-26 15:56:36
【问题描述】:
我在 Ruby on Rails 应用程序中看到了这段代码:
module SessionsHelper
def current_user
@current_user ||= User.find_by id: session[:user_id]
end
...
end
current_user 方法中为什么使用实例变量而不是局部变量?当我将其更改为局部变量时,一切都与使用实例变量相同。
我读到一个实例变量可以在包括这个模块的许多其他类中使用。但是在这种情况下,它们是在current_user 方法中定义的,用于存储用户的值@current_user。这在许多其他类中是如何使用的?
【问题讨论】:
标签: ruby memoization