railsにgemで追加されたクラスにメソッドを追加する方法

railsにgemで追加されたクラスにメソッドを追加する方法メモ。



railsにgemで追加されたクラスにメソッドを追加する方法


railsを使っていてgemで追加されたクラスがある時、config/initializers/ 以下のようににクラス定義を置くことでメソッドを追加することができます。


一例としてVersionクラスにメソッドを追加するコードは下記の通り。


# config/initializers/version.rb
Version.class_eval do
  def hey
    'hey'
  end
end

PaperTrail::Versionのように名前空間が階層化されたクラスの場合は下記の通り。


# config/initializers/paper_trail/version.rb
PaperTrail::Version.class_eval do
  def hey
    'hey'
  end
end

参考リンク


[Rails] Rails アプリで利用しているライブラリにモンキーパッチをあてるには?


著者プロフィール
Webサイトをいくつか作っています。
著者プロフィール