1
想知道如何做一個像設計一樣的東西與current_user,一個全局可用的變量,我猜測是一個會話?如何聲明一個可從我的Rails應用程序中的任何地方訪問的變量?
我的意思是,從別的地方得到一個視圖中任何東西,你需要@前綴
那麼這是什麼樣的變量?
想知道如何做一個像設計一樣的東西與current_user,一個全局可用的變量,我猜測是一個會話?如何聲明一個可從我的Rails應用程序中的任何地方訪問的變量?
我的意思是,從別的地方得到一個視圖中任何東西,你需要@前綴
那麼這是什麼樣的變量?
類似色器件如何提供此類變量「全球」?有CURRENT_USER,在什麼我猜一個全局變量是會話
current_user
不是一個全局變量。對於例如,在應用程序引導過程中不能引用current_user
--這不僅沒有任何意義,而且也證明它不是全局的,因爲它不可用。另一種快速判斷Ruby中的變量是否全局的方法是全局變量以$
開頭。
相反,current_user
是幫助方法,它被DeviseController包含到ApplicationController中。
作出類似的方法,你可以添加你自己的方法到自己的應用程序的ApplicationController
:
def current_balance
current_user.balance
end
但是,請注意,如果你發現自己把更多的不是在一個真正的少數應用程序範圍的輔助方法ApplicationController
,你幾乎可以肯定地通過將無關的顧慮混合到你的控制器中來創造技術債務。
Pfff ...想不起幫手。感謝您指出這一點,併爲編輯,這個問題看起來更聰明(; – Ben 2014-11-05 00:42:33