繁体   English   中英

包含的模块方法不能在类方法中调用

[英]included module methods cant be called in class methods

我有一个模块RegexHelper ,其中包含用于验证字符串是否仅为数字的方法:

module RegexHelper
  def is_numeric?(str)
    !!str.match(/^[0-9]+$/)
  end
end

而且我将此模块包含在几个类中,当我尝试在实例方法中使用它们时,它会很好地工作。 但是现在我想在类方法中使用它们,并且根本无法正常工作,而调用RegexHelper.is_numeric?(my_str)对我不起作用。

我认为问题可能是在创建新对象时include RegeHelperinclude RegeHelper了。 那么,我该如何在全班学习呢?

尝试这个:

extend RegeHelper

include用于向类添加实例方法,而extend用于添加类方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM