Rails> = 3, приложение само является модулем (живет в config/application.rb
). Вы можете хранить их в модуле приложения
module MyApplication
SUPER_SECRET_TOKEN = "123456"
end
Затем используйте MyApplication::SUPER_SECRET_TOKEN
для ссылки на константу.
Rails> = 2.1 && <3 вы должны разместить их </p>
- в
/config/initializers
, когда константа имеет область применения
- когда константа относится к конкретной модели / контроллеру / помощнику, вы можете включить ее в сам класс / модуль
До поддержки Rails 2.1 и initializers
программисты использовались для помещения констант приложения в environment.rb.
Вот несколько примеров
# config/initializers/constants.rb
SUPER_SECRET_TOKEN = "123456"
# helpers/application_helper.rb
module ApplicationHelper
THUMBNAIL_SIZE= "100x20"
def thumbnail_tag(source, options = {})
image_tag(source, options.merge(:size => THUMBNAIL_SIZE)
end
end