ruby-on-rails – Rails:无法访问lib目录中的模块

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails:无法访问lib目录中的模块前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想创建一个通用的字符串操作类,可以在我的Rails应用程序中的模型,视图和控制器中使用.

现在,我正在尝试将一个模块放在我的lib目录中,而我只是想在rails控制台中访问该函数来测试它.我从类似的问题中尝试了很多技巧,但我无法让它发挥作用.

在我的lib / filenames.rb文件中:

module Filenames

  def sanitize_filename(filename)
    # Replace any non-letter or non-number character with a space
    filename.gsub!(/[^A-Za-z0-9]+/,' ')

    #remove spaces from beginning and end
    filename.strip!

    #replaces spaces with hyphens
    filename.gsub!(/\ +/,'-')
  end

  module_function :sanitize_filename

end

当我尝试调用sanitize_filename(“some string”)时,我得到一个no方法错误.当我尝试调用Filenames.sanitize_filename(“some string”)时,我得到一个未经过限制的常量错误.当我尝试包含’/ lib / filenames’时,我收到一个加载错误.

>这是创建我可以在任何地方访问的方法的最常规方法吗?我应该创建一个类吗?
>我怎样才能让它发挥作用?

猜你在找的Ruby相关文章