Недавно мне пришлось перезапускать сервер разработки каждый раз, когда я меняю свой код. В моем файле development.rb все еще есть эта строка:
config.cache_classes = false
Я попытался использовать отладчик, чтобы убедиться, что это значение осталось неизменным. Для этого я установил свою конфигурацию на глобальную переменную в environment.rb:
$my_initializer = Rails::Initializer.run do |config| ... end
, затем я поместил строку debugger
в один из моих контроллеров, чтобы я мог сделать это:
(rdb:2) $my_initializer.configuration.cache_classes false
Так что это исключило возможность что значение cache_classes
было установлено в true
где-то еще. Я пробовал использовать как Mongrel, так и WEBrick, но это все еще происходит.
Что еще может приводить к тому, что Rails не перезагружает мой код при каждом запросе?
Я использую:
Mongrel 1.1.5
WEBrick 1.3.1
{ {1}} Rails 2.3.8
Ruby 1.8.7 p253
РЕДАКТИРОВАТЬ: по предложению @Daemin я проверил, что время моих файлов действительно обновляется когда я сохраняю их в текстовом редакторе (Textmate)
merced:controllers lance$ ls -l people_controller.rb -rwxr-xr-x 1 lance staff 2153 Act 10 18:01 people_controller.rb
Затем я внес изменения и сохранил файл:
merced:controllers lance$ ls -l people_controller.rb -rwxr-xr-x@ 1 lance staff 2163 Oct 11 12:03 people_controller.rb
Так что это не проблема с mtimes.