呼び出すメソッドが動的に変わる場合のメソッドの呼び出し方法のメモ。
制御構造で分ける場合
def get_id
return 256
end
def get_name
return 'エナジー炭酸 がぶ飲み POWER SQUASH' # いまハマってる
end
# nameが欲しい
data_type = :name
# caseで処理を分ける
case data_type
when :id then p get_id
when :name then p get_name
メタプログラミングの場合
def get_id
return 64
end
def get_name
return 'A&W ROOT BEER' # ホントはこっちのほうが好き
end
# nameが欲しい
data_type = 'name'
#sendでメソッドを呼び出す
p send("get_#{data_type}")
Qiitaに投稿した記事です。