1

当您在 Rails 中定义关联时,它会为您在该关联上创建一些方法。例如,考虑以下情况:

class Person
  has_many :friends
end

你得到的方法之一是person.friends.clear

我怎样才能删除这个方法,这样person.friends.clear会引发一个NoMethodError

注意:我尝试了一些事情,包括运气undef_methodremove_method没有运气。请只提供已知的答案,而不是猜测。

4

1 回答 1

2

虽然我自己没有尝试过,但可以请检查以下是否有效

has_many :friends do
    def clear 
       raise NoMethodError, "Some reason text"
    end     
end
于 2012-09-01T16:20:31.193 回答