在邁克爾·哈特爾的教程,他有一個module SessionsHelper
,其中有一個叫current_user=
方法,它接受一個參數,並將其分配給@current_user
。然後,他使用current_user = User.first
這樣的行在他的程序中以其他各種方法調用此方法。Rails - 在末尾使用等號的方法?
我的問題是,我們如何知道current_user=
方法被調用的話 - 在我看來,那什麼會實際上發生的是一個叫current_user
當場創建新的變量,鑑於User.first
值,那麼當函數關閉那個變量就會死掉。
我還測試了這款簡單地通過創建下面的代碼:
def x= val
puts "method called"
end
x = 46
puts x
這段代碼簡單地打印46在屏幕上 - 功能x=
永遠不會被調用。那麼在Michael Hartl的教程中做什麼current_user=
方法,以及他如何使該函數被調用?