从Rails控制台重新加载帮助程序

uti*_*tiq 5 helper ruby-on-rails-3

我在Rails 3中调用Rails控制台中的辅助方法,如下所示:

>> helper.my_method(parameter)
>> #=> some result
Run Code Online (Sandbox Code Playgroud)

但是,如果我更改辅助方法,则当我再次调用相同的方法时,不会反映更改.我必须exit运行rails console以便看到辅助方法的更改生效.

use*_*743 9

实际上,helper是一个实例化的对象,它会记住ApplicationController帮助程序,在调用时不会重新加载reload!,至少在Rails 4中.您可以通过ApplicationController.helpers.my_method(parameter)在控制台中调用来解决此问题.reload!编辑帮助程序时仍需要使用它,但它会重新加载helper.


cor*_*ard 5

您只需要运行reload!大多数类就会重新加载,包括您的助手。