0

我想使用以下代码添加所有格字符串的方法:

module PossessiveHelper
  def possessive
    suffix = if self.downcase == 'it'
      "s"
    elsif self.downcase == 'who'
      'se'
    elsif self.end_with?('s')
      "'"
    else
      "'s"
    end
    self + suffix
  end
end

class String
  include Possessive
end

我想知道我在哪里以及如何将它包含在 Rails 应用程序 3.2 中?

4

2 回答 2

2

我喜欢使用以下方法调用初始化程序monkey_patching.rb

Dir[Rails.root.join('lib', 'monkey_patching', '**', '*.rb')].each do |file|
  require file.to_s
end

然后您所要做的就是将您的代码添加到lib/monkey_patching/string.rb

于 2013-10-01T12:11:20.497 回答
1

您应该创建一个具有相同内容的 rb 文件并将其放入 config/initializers.xml 中。

它将在 Rails 应用程序初始化期间加载,并且这些新方法可用于所有字符串对象。

于 2013-10-01T12:03:51.187 回答