0
在我的创业板模块包含在其他宝石类,它是由一个自定义类的Rails应用程序扩展一个类模块:如何包括在
我的宝石:
module MyGem
def my_method
end
end
AnotherGem.send :include, MyGem
另一宝石:
class AnotherGem
end
类中的Rails应用:
class ClassInRailsApp < AnotherGem
end
运行这将导致以下行为:
$ rails c
Loading development environment (Rails 5.1.4)
irb(main):004:0> MyGem.method_defined? :my_method
=> true
irb(main):005:0> AnotherGem.method_defined? :my_method
=> true
irb(main):006:0> ClassInRailsApp.method_defined? :my_method
NoMethodError: undefined method `my_method' for ClassInRailsApp:Class
我怎样才能确保该类扩展,才能将我的模块?
编辑:
我试图直接包括ClassInRailsApp
MyGem
和指定实例方法仍然是不可用的。这个问题是否与此有关?
你这里的例子代码实际上产生'true',所以我不确定你的问题到底是什么。这应该有效,并且对我有用。 – tadman