我正在尝试覆盖另一个gem的方法。代码看起来像这样:
module DatabaseCleaner
class Base
def orm_strategy(strategy)
# ...
end
end
end
在我的宝石中:
require 'database_cleaner/base'
module DatabaseCleaner
class Base
def orm_strategy(strategy)
# New code
end
end
end
然而,原版仍在使用中。我做错了什么?
答案 0 :(得分:2)
您正在尝试覆盖Foo::Bar
类的实例方法。你必须重新定义类的方法:
module Foo
class Bar
def self.test # self == Bar
# New code
end
end
end