我很難理解何時以及何時不在Rails中使用符號。我明白,沒有許多方法,符號與字符串不會太不相似。我也明白這些符號能夠產生好的密鑰,因爲同名的符號佔用了內存中的一個地址。爲什麼回調在Ruby on Rails中使用符號
我很難明白的是爲什麼Rails的決定在某些情況下使用的符號。如果我有回調
before_action :ask_stack_overflow_question
def ask_stack_overflow_question
puts "why did I just use a symbol?"
end
我不太明白爲什麼把對待方法作爲符號?爲什麼我需要保持方法不變?
我無法找到的文檔中找到答案。
謝謝
您正在使用哪種版本的導軌? – Surya 2014-11-06 18:26:24
我正在使用4.1.7 – Deepak 2014-11-06 18:30:39
很可能是因爲單個冒號('before_action:ask_stack_overflow_question')比字符串('before_action'ask_stack_overflow_question'或'before_action「ask_stack_overflow_question」)在視覺上噪音更小'並且讓人們想到符號參數作爲語言的一部分,而不是程序的一部分。 – 2014-11-06 18:41:42