По каким причинам «перезагружать!» не всегда работает в консоли Rails?

Я только осваиваю консоль Rails и нахожу ее полезной для быстрого тестирования методов в моих классах. Я знаю, что могу вносить изменения в свои Модели, затем

> reload!

чтобы получить эти обновления, но иногда я обнаруживаю, что мой последний код не перезагружается. Кэширует ли Rails код где-нибудь?

В очень простом псевдопримере у меня может быть плохой код в строке 100 :

100: u = User.alll

. и в консоли Rails, когда я запускаю этот метод, я могу получить ошибку, похожую на:

NoMethodError: undefined method `alll' for User:Class... on line 100

затем измените мой код, исправив ошибку

100: u = User.all

затем перезагрузить:

> reload!

а потом при вызове метода в этом классе с правильным кодом он все равно скажет

NoMethodError: undefined method `alll' for User:Class... on line 100

Когда ясно, ошибка исправлена, и оскорбительная строка больше не находится даже в строке 100. Есть ли способ принудительно/жестко -сбросить "перезагрузку!" команда?

16
задан jbnunn 17 February 2014 в 17:14
поделиться