Если вы достаточно умно назвали свои взгляды, вы можете просто сделать
render @article.type
или
render :partial => @article.type
В противном случае вы можете определить метод во всех ваших подклассах STI, который возвращает имя части / страницы, которая будет отображаться, таким образом вы избежите всей логики if / else в вашем контроллере.
Другим подходом было бы иметь отдельные контроллеры для разных подклассов, но это не очень хороший дизайн. Если бы вы пошли по такому пути, то, возможно, ИППП был не лучшим подходом.