1

所以我有一个控制器,它从应用程序控制器向下继承。它定义了各种受保护的方法,应用程序控制器也是如此。现在,如果应用程序控制器已经定义了这些方法,我不希望它们被其子类覆盖。我一直在这个控制器中尝试一些事情,例如:

class SomeController < ApplicationController

protected
  unless instance_methods.include? "some_method"
    def some_method
    end
  end

但是,使用 Rails 记录器,我仍然可以看到正在调用 some_method。

4

1 回答 1

0

做一些进一步的搜索,我能够弄清楚:),这要感谢这里关于这个问题的海报:如何判断一个方法是否在一个类中定义?

class SomeController < ApplicationController

protected
  unless method_defined? "some_method"
    def some_method
    end
  end
于 2012-10-12T19:22:47.963 回答