【发布时间】:2012-04-04 19:51:01
【问题描述】:
我需要在 Windows 上使用 Rails 2.3 对 Ruby 1.8.7 中的 strftime 进行猴子补丁。在 config\initializers 我把这个 time_patch.rb 文件 (code below) 但它似乎没有捡起来:
if RUBY_PLATFORM =~ /mingw32|mingw64|mswin32|mswin64/
class Time
alias_method :original_strftime, :strftime
def strftime(fmt)
hour12 = "%2d" % ((hour + 11) % 12 + 1)
original_strftime(fmt.gsub(/%l/, hour12))
end
end
end
我将方法重命名为 def blorping 并从 Rails 控制台执行 Time.methods 但没有看到新方法。
我需要做什么才能让它工作?
【问题讨论】:
-
带有'def blorping'。 . .',试试 Time.now.methods
-
它在那里显示...我做错了什么;即如何将其添加到 Time 类中?
-
strftime 是一个实例方法,这就是你想要的
-
@klochner 谢谢你的帮助。由于它不是答案形式,我发现了一些对我有用的其他答案并投票赞成
-
没问题,我不需要业力
标签: ruby-on-rails ruby ruby-on-rails-2 ruby-1.8