カクカクしかじか

技術的なアレコレ

Railsアプリ上で文字列をクラス定数に変換する方法

経緯

異なるクラスであるものの、同じ形式のクラスメソッド呼び出しを共通化したいというケースに直面し、調べることに!

# やりたいこと
特定のクラス名.クラスメソッド

やり方

小文字の文字列をクラス名の形式にするために classify しても、その結果はまだ文字列でクラス定数ではないのでクラスメソッドは実行出来ません。
そこでさらに constantize することで文字列をクラス定数に変換することが出来ます。

class_constant = "文字列".classify.constantize
class_constant.クラスメソッド