よたらぼ
自分の興味の赴くままにIT技術系のネタを取りとめもなくメモっています。
Ruby言語やLinuxのネタが多いです。

February 10, 2007 [おもひで]

[Rails] Ruby-GetText-Package-1.9.0がRails-1.1.6で動かない

というレポートをもらった。Ruby-GetText-1.9.0はalias_method_chainを使っているんだけど、これ、Rails-1.1.6に無いのね・・・。

一応、CVSバージョンでは1.1.6でも動作するように修正かけましたので、Rails-1.1.6を使っている人はそちらを使ってください。

あるいは、environment.rbを以下のように書けばRails-1.1.6+Ruby-GetText-1.9.0の組み合わせでも動作すると思います。

class Module
  unless defined? alias_method_chain
    def alias_method_chain(target, feature)
      # Strip out punctuation on predicates or bang methods since
      # e.g. target?_without_feature is not a valid method name.
      aliased_target, punctuation = target.to_s.sub(/([?!=])$/, ''), $1
      yield(aliased_target, punctuation) if block_given?
      alias_method "#{aliased_target}_without_#{feature}#{punctuation}", target
      alias_method target, "#{aliased_target}_with_#{feature}#{punctuation}"
    end
  end
end


編集