我希望有一個列表,可用於整個應用程序,所以我把它放在constants.rb:爲什麼constants.rb中的這個變量需要聲明爲全局變量?
hebrew_consonants = ["א", "ב", "ג", "ד", "ה", "ו", "ז", "ח", "ט", "י", "ך", "כ", "ל","ם","מ","ן", "נ", "ס", "ע", "ף", "פ", "ץ", "צ", "ק", "ר", "ש","ת"]
在application_controller.rb,我用的是名單如下:
def is_hebrew?(query)
(0...query.length).each do |index|
return true if hebrew_consonants.include?(query[index])
end
return false
end
我重新啓動了服務器,該應用抱怨說它不知道該列表。我在美元符號的聲明及其引用($ hebrew_consonants)之前放置了美元符號,它起作用了。與我的其他常數,他們只是工作。我想我認爲他們是假設是因爲在那個類中而成爲全局變量。爲什麼這個人的行爲不同?
謝謝
P.S.我知道列表聲明看起來很古怪,但我想,它只是從右向左粘貼字符。它確實有效。 –