30分で作るRuby最小限のデコレータ

2025-06-12
30分で作るRuby最小限のデコレータ

著者はRailsプロジェクトでTeacherモデルにビュー関連のロジックを追加する必要がありましたが、バージョン互換性の問題でdraper gemを使用できませんでした。そこで、最小限のデコレータをゼロから作成しました。最初は追加の動作を追加しましたが、最終的にはそれらを抽象化しました。この記事では、Rubyのmethod_missingを使用して未定義のメソッド呼び出しを処理する方法、継承とSimpleDelegatorを使用してデコレータの実装を簡素化する方法について詳しく説明します。最終的な結果は、クリーンで効率的なデコレータであり、Railsのデフォルト動作との統合に関する問題を解決します。