コントローラの階層化 Railsで開発を行う場合に、コントローラを継承して階層化することで ずいぶん楽に開発を進められるようになるのですが、意外と知られていないようなので紹介します。 (タイトルにRailsと銘打っているけれど、恐らくRailsからのPHP派生フレームワークcakephpやsymfonyでも同じハズ) コントローラの継承のさせ方を簡単に図にしてみた。 なぜ継承させると開発が楽になるのか? Railsの入門向け書籍などには、一番の大元になるApplicationControllerに対して 共通のロジックを書くことでDRYに書けるよ!と、あったりするんですが、 実際にはRails等フレームワークを使うような開発の場合(規模がそれなりに大きい事が多いため)、 「データをメンテする管理画面」と「ユーザーが参照するための公開画面」の2つに大きく分けられます。 しかし