Ответ 1
Вы можете использовать load
вместо require
. Это загрузит файл независимо от того, была ли он уже загружена раньше. Обратите внимание, что при load
вам нужно указать расширение .rb
, которое необязательно с require
. Итак, require "path/to/myconfig"
становится load "path/to/myconfig.rb"
.
Обратите внимание, что это не будет определять значение, определенное предыдущей конфигурацией. Поэтому, если конфигурация изменена с $verbose = true; $debug = true
на $verbose = false
, тогда $verbose
будет false, но $debug
будет по-прежнему истинным после перезагрузки конфигурации.
Конечно, вам нужно поставить оператор load
где-нибудь, где он будет выполняться каждый раз, когда файл конфигурации должен быть перезагружен (т.е. внутри какого-либо метода или hook).