在Ruby on Rails中,为了扩展String类,代码应放在哪里?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (17)

如果在Ruby on Rails上,我需要添加一个名为classString的方法


  def capitalize_first
    # ...
  end
end

并想知道文件应该放到哪里?

提问于
用户回答回答于

我总是在我的库目录中添加core_ext目录。

加载自定义扩展的创建和初始化程序config/initializers/core_exts.rb。并在其中添加以下行:

Dir[File.join(Rails.root, "lib", "core_ext", "*.rb")].each {|l| require l }

并:

lib/core_ext/string.rb

class String
  def capitalize_first
    # ...
  end
end
用户回答回答于

你可以在config/initializers/string.rb中完成

class String
  def capitalize_first
    # ...
  end
end

扫码关注云+社区