我有一个可以打印出一些调试信息的调试方法,这个调试方法在application_helper.rb
中定义要禁用此方法,以便不为此文件打印调试信息,我添加了
def debugp; return nil; end
在使用原始debugp
的视图文件中的 ...但似乎这个新定义无法覆盖debugp
的原始定义(因为调试信息仍然打印出来)。有没有办法覆盖它?还有其他方法可以禁用打印,但我想找出有关覆盖应用程序助手中的方法的部分。感谢。
答案 0 :(得分:1)
您无法覆盖视图文件中的方法,但是您可以在相应的帮助器中覆盖它 - 如果您使用Rails生成器生成控制器,那么它也会生成一个帮助器,例如,“人们“控制器会有这些文件:
因此,要从应用程序助手中覆盖辅助方法,请将助手方法定义放在视图中,而不是放在助手中:
module PeopleHelper
def debugp; return nil; end
end
希望有所帮助,