猴子修补Rails

时间:2013-12-09 08:07:33

标签: ruby-on-rails ruby-on-rails-4

我需要修补其中一个Rails核心类,特别是ActionView::Helpers::UrlHelper::ClassMethods.link_to方法。据我记得,当加载部分Rails时会触发一些事件,如何为它们添加处理程序?或者我应该将代码放入初始化程序?

1 个答案:

答案 0 :(得分:1)

link_to似乎不在ClassMethods中。 From here

config/initializers/url_helper_extensions.rb

module ActionView
  module Helpers
    module UrlHelper
      alias_method :_link_to, :link_to
      def link_to

        # Your code ...

        # Call original method if you want.
        _link_to

      end
    end
  end
end