В режиме разработки ваш класс будет перезагружаться при каждом запросе, поэтому значение, установленное в инициализаторе при запуске приложения, не будет сохраняться при перезагрузке класса после первого запроса.(Результат " config.cache_classes = false " в вашем development.rb).
Однако, если вы хотите установить значение в инициализаторе и сохранить его в режиме разработки,Вы можете добавить его как константу:
initializers.rb
SALT='savory_hash'
ИЛИ как переменную конфигурации приложения:
application.rb
module YourAppsName
class Application < Rails::Application
config.token_salt = "savory_hash"
end
end
, который будет доступен в любом месте приложения с помощью:
Rails.application.config.token_salt
Конечно, если вы включите кэширование классов в вашей среде, вы должны обнаружить, что значение вашей переменной будет сохраняться без выполнения чего-либо из вышеперечисленного.