4
Iam對Rails 3應用程序控制器或幫助器中setter和getters的可用性有點困惑。 爲什麼有人在控制器方法(或模塊)中使用setter和getters,而不僅僅是一個實例變量。有人可以舉個例子嗎? 使用setter和getters是明智嗎?何時需要?Ruby on Rails 3:Setters和Getters以及控制器方法中的自我
例如,幾度夕陽紅on Rails的3教程由邁克爾·哈特爾,它說(頁347):
模塊SessionsHelper
def current_user=(user)
@current_user = user
end
def current_user
@current_user ||= user_from_remember_token
end
爲什麼不首先使用@current_user
。
我的第二個問題是控制器方法中自我的含義是什麼。 例如:
Class SessionsController < ApplicationController
def sign_in?
cookies.permanent.signed[:remember_token] = [user.id, user.salt]
self.current_user= user
end
end
我知道用戶模型類中的自我是指用戶自己 但是,當它是一個控制器內這是什麼指什麼? 任何示例?
謝謝