質問: rails において、対象クラスをベースとした継承木の、末端のクラス一覧を取得したいと思いました。これは可能でしょうか。 用途としては、 STI と組み合わせて、実際にアプリで利用する可能性のあるサブクラスを自動で列挙したいな、と思い、今回のケースでは継承木の末端のみしか使わない想定なので、この質問をいたしました。 またさらに、今回 STI のサブクラスは、 STI のベースクラスの中に定義してあり、 Autoload の問題などはないはずです。
回答: 基本的には `ObjectSpace`のメソッドを駆使すれば可能ですが、 Rails であれば ActiveSupport が `Class#subclasses` や `Class#descendants` を提供しているのでそれを使えばよいでしょう。